Я пытаюсь создать связанные модели с Rails. Мои модели - это финансовые, у которых много документов и документов, принадлежащих Financial. Рабочий код при создании связанной с ним модели может бытьСоздание связанной модели с рельсами
def create
@financial = Financial.find(2)
@document = @financial.documents.create(document_params)
...
end
На мой взгляд, у меня есть форма, которая выглядит так, чтобы выбрать правильный финансовый
<%= form_for Document.new do |f| %>
<%= f.collection_select :financial_id, Financial.all, :id, :description %>
<%= f.submit %>
Я вижу правильные параметры передаются в войти, когда я отправить форму
"financial_id"=>"3"
Так что я понял, я просто должен был бы изменить исходный код для:
def create
@financial = Financial.find(params[:financial_id])
@document = @financial.documents.create(document_params)
...
end
но я получаю «Не удалось найти Финансовый с« id »=». Я пробовал другие вещи, в том числе:
@financial = Financial.find_by(id: params[:financial_id])
Без особого успеха. Может ли кто-нибудь дать мне соответствующий синтаксис, пожалуйста? Благодарю.
можете ли вы ввести код для document_params? –
Да, возможно, [сильные параметры] (http://edgeapi.rubyonrails.org/classes/ActionController/StrongParameters.html) проблема? Разрешили ли вы: financial_id в документе? – Huw