身份不明的方法“兴趣” - has_many协会

时间:2016-07-12 19:07:27

标签: ruby-on-rails

我有一个可以创建兴趣标签的用户。用户有很多兴趣和兴趣属于用户,非常简单。我按照此(http://guides.rubyonrails.org/getting_started.html)指南进行设置,但收到错误:undefined method interests for #<Interest:0x833e200>

用户模型:

has_many :interests

兴趣模式:

belongs_to :user

数据库迁移:

def change
create_table :interests do |t|
  t.string :iVal
  t.references :user, index: true, foreign_key: true

  t.timestamps null: false
end

在我看来:

<%= form_for([@user, @user.interests.build]) do |fi|%>
   <%= fi.label :interests %>
   <%= fi.text_field :interests %>
   <%= fi.submit%>
<% end %>

我已经尝试过我在网上找到的所有解决方案,但我还没有找到任何有用的解决方案。

非常感谢任何帮助,谢谢。

2 个答案:

答案 0 :(得分:1)

您的表单适用于属于@user的兴趣对象。兴趣没有<%= fi.text_field :interests %>

兴趣,可能有一个名字,所以感兴趣的文字字段可能就是你想要的东西:

<%= fi.text_field :name %>

答案 1 :(得分:0)

您的错误表明您尝试从interests课程致电Interest,如下所示:Interest.interests

如果您有兴趣将表单构建器用于一对多关系,请考虑阅读此文档:http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for