我对编程很陌生,所以我很难解释这一点 - 请原谅。
我的rails应用程序中有一个Document模型和一个Note模型。注释属于文档,文档有许多注释 - 注释表中的外键是document_id。
在我的文档显示页面上,我有一个注释表单,它使用:content属性作为text_area字段。
我想要做的是将文档的id传递给note params,这样笔记就会包含:用户提交的内容:document_id,基于document_path。
目前我正在使用hidden_field表单助手将:document_id添加到note的params哈希中,并将整个内容发送到NotesController,但我希望有更清洁/可能更简单的方法。
如果这是有道理的,有人可以提出更好的方法吗?谢谢。
答案 0 :(得分:0)
在你的路线中有类似
的东西resources :documents do
resources :notes
end
然后你应该通过这条路线添加一个音符
/文档/ 5 /笔记/新
然后在你的NotesController中有
def create
@document = Document.find(params[:document_id])
@note = @document.notes.build(params[:note])
if @note.save
# Blah
else
# Blah
end
end
(决不会对此进行测试 - 但它会让您了解如何在没有隐藏字段的情况下以RESTFUL方式执行此操作)