Я пытаюсь создать связанные модели с Rails. Мои модели - финансовые, в которых много документов, и документ, принадлежащий финансовым. Рабочий код при создании связанной модели может быть
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])
Без особого успеха. Может ли кто-нибудь дать мне соответствующий синтаксис, пожалуйста? Спасибо.