2013-02-23 4 views
0

У меня есть один город со многими людьми.Рельсы: поле формы

Я хочу, чтобы добавить избранную-поле в моей форме города, чтобы добавить людей:

<%= form_for(@city) do |f| %> 
<p> 
    <%= f.label city.people.id, "Person" %><br /> 
    <%= f.select city.people.id, 
     Person.find(:all).collect{|d| [d.person_name,d.id]}, 
     :prompt => "Please choose" %> 
</p> 
<% end %> 

Rails сказал: undefinied varialbe город. Я реализовал в городе: много и лично принадлежит_to.

Что не так с моим фрагментом кода?

ответ

1

Вы должны использовать переменную экземпляра @city, не забудьте символ @.

Также @city.people является коллекцией типа Person, поэтому @city.people.id не работает.

+0

Я не понимаю, что вы имеете в виду? Должен ли я попробовать @ city.person_id? – ubuseral

+0

Проблема в том, что в городе есть люди, правда? Поэтому, когда вы делаете @ city.people, вы не получаете только одного результата, вы получаете много. Это представлено как массив экземпляров типа Person. – Kaeros

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