2016-07-12 2 views
0

У меня есть пользователь, который может создавать теги интересов. Пользователи имеют много интересов и интересов, очень просто. Я после этого (http://guides.rubyonrails.org/getting_started.html) руководства, чтобы настроить его, но я получаю ошибку: модель undefined method interests for #<Interest:0x833e200>Неопознанный метод «Интересы» - has_many association

Пользователя:

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 %> 

Я перепробовал все файлик в Интернете, но я до сих пор найти что-нибудь, что помогает.

Любая помощь будет очень признательна, спасибо.

ответ

1

Ваша форма объекта интереса, которая принадлежит @user. Интересы не <%= fi.text_field :interests %>

Интерес, вероятно, имеют имя, поэтому текстовое поле для интереса может быть то, что вы хотите здесь вместо:

<%= fi.text_field :name %>

+0

Leito, вы правы. Не могу поверить, что я пропустил что-то настолько простое. Спасибо! –

+0

Не все ли простые ошибки, когда вы знаете ответ? Счастлив помочь, мы все чаще делаем эти ошибки, что мы признаем. – Leito

0

Ваша ошибка показывает, что вы пытаетесь позвоните по телефону interests из класса Interest, например: Interest.interests.

Если вы заинтересованы в использовании формы строителя для связи один-ко-многим, считаю чтение этой документации: http://apidock.com/rails/ActionView/Helpers/FormHelper/fields_for

Смежные вопросы