私は自分のサイトにフレンド システムを実装しようとしていますが、自己参照型の関連付け (http://railscasts.com/episodes/163-self-referential-association) で Railscast (#163) を完成させました。ビデオのある時点で、彼はinverse_friendships
テーブルとの新しい関係を作成しますが、inverse_friendships
モデルや移行を生成するところを見たことはありません。これはinverse_
Rails マジックと関係がありますか?
models/user.rb
has_many :friendships
has_many :friends, :through => :friendships
has_many :inverse_friendships, :class_name => "Friendship", :foreign_key => "friend_id"
has_many :inverse_friends, :through => :inverse_friendships, :source => :user
また、彼はどこfriends
からコラムを入手しますか? の足場を生成したときfriendship
、彼は 2 つの列を作成user_id:integer friend_id:integer
しましたが、実際の friends テーブルには何もありませんでした。
足場の生成
script/generate nifty_scaffold friendship user_id:integer friend_id:integer create destroy
rake db:migrate