1
我試圖創建類User
和Benefit
之間的HABTM關係。問題是用戶和好處有多個關係,所以我試圖給這個關係一個獨特的名字,FavoriteBenefitization
。HABTM與自定義關係名稱的關係
不幸的是,當我做User.last.favorite_benefits
我不斷收到錯誤消息:
ActiveRecord::StatementInvalid: Mysql2::Error: Unknown column 'favorite_benefitizations.user_id' in 'where clause': SELECT `benefits`.* FROM `benefits` INNER JOIN `favorite_benefitizations` ON `benefits`.`id` = `favorite_benefitizations`.`favorite_benefit_id` WHERE `favorite_benefitizations`.`user_id` = 6088
下面是我使用的代碼:
class FavoriteBenefitization < ActiveRecord::Base
belongs_to :favorited_user, :class_name => 'User'
belongs_to :favorite_benefit, :class_name => 'Benefit'
validates :favorited_user, :favorite_benefit, :presence => true
end
class User < ActiveRecord::Base
has_many :favorite_benefitizations,
:dependent => :destroy
has_many :favorite_benefits,
:through => :favorite_benefitizations
end
class Beneift < ActiveRecord::Base
has_many :favorite_benefitizations,
:dependent => :destroy
has_many :favorited_users,
:through => :favorite_benefitizations
end
這是運行的Rails應用程序3.1
任何幫助會很棒。謝謝!