Rails勉強日記

assert_differenceとは

後続するblockの前後での差異を調べるassertかな.詳しく書いているDocumentがなかなか見つからないんだけど,has_many :through: Getting arbitrary with assert_differenceによると,下記のcodeがある場合,do〜end前と後とでUserオブジェクトの個数(:coun…

ActionMailerでサーバの設定方法

ActionMailer::Base.smtp_settings = { :address => 'smtp server', :port => 25, :user_name => 'username', :password => 'password', :authentication => :plain }

多対多で has_many :through を使ったときの Association へのデータ追加法

多対多の関係で,has_many :through を使うとき,Association テーブルへデータを追加する方法の健忘録. Association テーブルに何かしらデータを持たせるときには book = Book.create book.users << user とすればいいのだが,create したくない状況での解…

has_many :through で associations までとってくるには.

なんとなくこんな感じ. user = User.find(1) user.books.find(:all, :include => [:associations])

cacheを削除するには

rake tmp:cache:clear 更新されなくて悩んだorz.

プロジェクト作成の順序

1. railsコマンドでプロジェクトファイル一式生成 $ rails project2. config/database.ymlでデータベース接続設定 3. script/generateでmodel生成 $ ruby script/generate model Model4. migrationファイルからテーブル生成 $ emacs db/migrate/00X_create_m…

Railsのお約束

規約のメモ modelは単数.テーブル名は複数 テーブル間の関連には, 関連するテーブル名_idをカラムに追加する modelに has_manyなどを記載する 親は子を複数形*1で指定し, 子は親を単数形*2で指定する. *1:要するにテーブル名 *2:要するにモデル名

PluginでLoginEngine#2

Rails EnginesとLoginEngineをインストール どうも接続できないのでググってみると,別の方法でできるみたいなのでやってみる. $ script/plugin install http://svn.rails-engines.org/plugins/engines $ script/plugin install http://svn.rails-engines.o…

PluginでLoginEngine#1

Plugin Repositoryを探す $ ruby script/plugin discover Rails EngineとLoginEngineをインストール $ ruby script/plugin install engines $ ruby script/plugin install login_engineとするも, http://source.collectiveidea.com/public/rails/plugins/ …