そろそろRailsについてまとめておくか
プロジェクトが一区切りついたのでまとめておく。
個人的に初めてのRails開発だったので最初は色々と戸惑うことが多かったです。
このまとめは、その都度調べたものをEvernoteに突っ込んでいてそれを並べた感じです。
まぁ自分用メモです。
環境はこんな感じ
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
ruby 1.8.7
rails 2.3.8
MySQL 5.1
開発機 windowsXP
本番機 CentOS
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
アプリの概要としてはアンケートシステムが近いですね。
CSVダウンロード、PDFダウンロード、グラフがある。
(グラフは自分実装してないのでcairoを使ってるくらいしかわからない。わからないってダメですね。)
モノはそんなに大きくなくて、2人で3ヶ月くらいのもの。
開発環境
Aptanaでインデントを揃える
Aptana IDE のRuby Editor における表示設定|AAC通信
この設定で大分見やすくなりました。
まぁ、考えればわかることなんですけどね。
対話型コンソール
対話型コンソールの使い方 - elm200 のノマドで行こう!
irbのrails版みたいなもの?
modelの確認とかに便利
ActiveRecord
join
Rails(ActiveRecord)のJOINのイディオム
—
ありえるえりあ
結局は今回のPJではモデルに関連を定義していなかったので、使いませんでした。
なんで関連定義してないんだろ?
Migration
MySqlの型を再現
Rails の Migration で MySQL の型を指定する | METAREAL
もともとMigrationを使ってなくて、ベタDDLで管理されてたのを途中からMigration管理に移行しました。
なもんで、元のMySql型を再現する必要がありました。
Migrate先の環境指定方法
$ rake db:migrate RAILS_ENV="production"
テーブル作成時は予約後に注意しよう
Rails初心者Tips - satake7’s memo
一回カラムに"class"って名前付けちゃってやってしまいました。
開発
次回から自動でログイン
3 日坊主日記 - 次回から自動でログインする
参考にさせていただいてうまく動いているのですが、
未だにちゃんと理解できてません(汗
数値をカンマ区切りで表示したい
アンカーリンクを作りたい
link_to、url_forでアンカーリンクを作る - RubyBeginner (ルビギナー)の世にも奇妙な開発
:ancor => "hoge"を加えればOK
redirect_toでエラー
wysawyg
and trueなんてあったんですね。
renderとredirect_to
[Rails] renderとredirect_toの違い - 拝啓、シーシュポス
未だに悩むことがあるけど、基本はredner、登録系などF5更新されて問題ある場合はredirect_toとしている。
単体テスト
任意ファイルのFixture読み込み
Error 404 (Not Found)!!1
全テストで同じFixture共有はキビシイでしょ。
ということで、これができて助かりました。
MySQL
Round()関数
Round() 関数は四捨五入関数ではない: ITコンサルタント 市井賢児のメモ
いやぁ、なんかおかしいと思ったんすよ。四捨五入じゃなかったとはびっくり。
パフォーマンスチューニングについて
エクスポート、インポート
文字化け
SREngine: Sein blog: 【MySQL】 文字化け解決法 (UTF-8)
これは危なかったです。本番機だけ文字コードが違ってて。
これ、大事です。
skip-character-set-client-handshake
リモート接続が遅い
MySQLでリモートへの接続が遅い | QUALL - blog
これも助かりました。
毎回20秒くらいかかっていたので。
その他
クラスインスタンス変数のお話
Design Recipe 別館 Blog - Ruby::クラスインスタンス変数の活躍
一回理解したけど、またすぐに忘れそうなので。
プロジェクトの進め方について
masuidrive的プロジェクトの方針 - @masuidrive blog
あまり関係ないけど、なんかこんな風にできたらいいなぁと。
IPAのRails資料
情報処理推進機構:オープンソフトウェア:OSS人材育成:OSSモデルカリキュラム導入実証
あまり知られてなさそうですけどかなりの資料がそろってます。
これからRailsやるって人はとりあえずここだけで勉強できると思います!