超訳でなくなったので読んだ。つるつると読めるのだけど、特別なサスペンス、トンチがあるわけでもなく。 グリシャムしては、かなり駄作。
リレーションシップを指定する。
class User < ActiveRecord::Base has_many :memberships, :dependent => :destroy has_many :events, :through => :memberships
class Event < ActiveRecord::Base has_many :memberships, :dependent => :destroy has_many :users, :through => :memberships
class Membership < ActiveRecord::Base belongs_to :event, :dependent => :destroy belongs_to :user, :dependent => :destroy end
飲み会管理システム(4)で定義したmembershipsメソッドを削除して、 Active Recordのデフォルトに任せる。event, userが削除されたら関連するmembershipを削除する処理も 自動的にされるようになるので、書いたコードを削除する。ハッシュではなく配列が返るように変わったので、そこは直す。