Ruby on rails Ruby on Rails在创建对象时出现NoMethodError
我正在尝试使用Ruby on rails Ruby on Rails在创建对象时出现NoMethodError,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在尝试使用group.group\u member.build创建一个新对象,但这会引发错误: NoMethodError: undefined method `group_member' for #<Group:0x007fe50d5468f8> group_member.rb belongs_to :group 我使用了成功创建组的owner.build\u group,我的印象是group.group\u member.build应该对group\u member对象执
group.group\u member.build创建一个新对象,但这会引发错误:
NoMethodError: undefined method `group_member' for #<Group:0x007fe50d5468f8>
group_member.rb
belongs_to :group
我使用了成功创建组的owner.build\u group
,我的印象是group.group\u member.build
应该对group\u member
对象执行相同的操作
我还尝试了group.group\u members.build
,返回的错误稍有不同:
ActiveRecord::UnknownAttributeError: unknown attribute: group_id
感谢大家的帮助,我似乎无法解决这个问题。谢谢。您需要使用协会的名称,该名称为复数group.group\u成员
。更新您的代码以使用:
group.group_members.build
您的“组成员”表需要有一个group\u id
列才能工作。group.group\u members.build
语法正确。group\u成员
是否有一列用于group\u id
?根据Rails惯例,它应该是group.group\u成员。仅构建和未知属性:group\u id
是因为group\u成员
表中可能没有group\u id
。我意识到我的迁移搞砸了。
group.group_members.build