Привет Я пытаюсь использовать Rails в Rest 2 - учебник по movielist с рельсами 4 и внесение изменений, когда я иду на новые рельсы. Я застрял в ассоциациях ролей фильмов. Я добавил к Movie.rbRails 4-Ассоциации -Tutorial Movielist
class Movie < ActiveRecord::Base
has_many :roles, :dependent => :destroy
has_many :people, :through => :roles
validates_presence_of :title
def new_role=(values)
values.each do |i, hash|
unless hash[:name].blank?
roles.create(:person_id => hash[:person_id], :name => hash[:name])
roles.save
end
end
end
def deleted_roles=(values)
values.each do |role_id|
roles.find(role_id).destroy
end
end
end
, а также показать, что _Form.html.rb оказываю (excert ниже)
<b>Add New People</b><br />
<% (1..3).each do |i| %>
<%= select_tag 'movie_new_role_person_id', options_for_select(@people), {
:name => "movie[new_role][#{i}][person_id]"
} %>
<%= text_field_tag 'movie_new_role_name', '', {
:name => "movie[new_role][#{i}][name]"
} %><br />
<% end %>
</p>
<p>
<%= f.submit "Update" %>
</p>
Это делает список, чтобы выбрать из, но когда я представить - ничего записывается в таблицу базы данных. Если я вручную вводить данные в базе данных, то она отображается на странице MovieList то есть: «Стивен Спилберг - директор» и т.д ... Любая помощь appreciated- сводит меня с умом на этом этапе
Я думал, что это может быть PARAMS ведомые ограничения, но Я не хороший пример фильтра Params ассоциации типа
Благодарности
Алан
Попробуйте изменить «создать», чтобы «создать!» чтобы выбросить ошибку. – Chicagogrrl
Спасибо Chicagogrrl. Я добавил, что сделал то, что должен был сделать с самого начала, и более тщательно отлаживал вывод консоли. Проблема была связана с параметрами как expeted, и как только я понял синтаксис для добавления методов в params.permits, он работал нормально. Выиграли, повторите эту ошибку, поэтому, возможно, стоило двух дней вытягивать волосы. еще раз спасибо . Я добавил синтаксис, который я использовал в разделе ответа, в случае его интереса –