【发布时间】:2012-02-24 07:14:50
【问题描述】:
出现跟随错误 ProjectController#create 中的ActiveRecord::HasManyThroughCantAssociateThroughHasOneOrManyReflection#create
无法修改关联“ProjectMaster#tag_masters”,因为源反射类“TagMaster”通过 :has_many 关联到“ProjectTag”。
以下是我的模型。
class ProjectTag < ActiveRecord::Base
has_many :tag_masters
has_many :project_masters
end
class TagMaster < ActiveRecord::Base
has_many :project_tags
has_many :project_masters, :through => :project_tags
end
class ProjectMaster < ActiveRecord::Base
has_many :project_tags
has_many :tag_masters, :through => :project_tags
# Some more code and associations here..
end
我是 Rails 新手并试图解决它,但我认为我无法改变我的关联。
我正在使用 rails 3.0.10
请帮帮我。
- 谢谢
【问题讨论】:
-
我认为我的联想是错误的。 class ProjectTag has_many :tag_masters
has_many :project_masters
end 而不是 has_many;我不得不使用belongs_to。
标签: ruby-on-rails-3