背景 我有两张桌子午餐和评论。这两个表使用不同的控制器并具有不同的视图。这两个视图还与午餐(一)与评论(多)关系相关联。
我将 lunches / index.html.erb 中的lunch_id传递给 comments / new
<%= button_to 'Comment', new_comment_path(lunch_id: lunch) %>
我知道传递有效,因为comments / new url字符串包含lunch_id:http://localhost:3000/comments/new?lunch_id=1
comments / new 是一个脚手架形式,可以创建注释并接受控制器中的以下参数:
params.require(:comment).permit(:body, :lunch_id)
目前,用户必须在表单中输入正文和lunch_id。然后,comments_controller使用下面的create方法
def create
@comment = Comment.new(comment_params)
end
问题: 在comments_controller(上面)的create方法中,如何从url字符串中读取:lunch_id并将其与输入的用户:body结合以创建新注释?
答案 0 :(得分:0)
这将从网址获取参数并将其添加到评论记录中。
def create
@comment = Comment.new(comment_params)
@comment.update_attribute(:lunch_id, params[:lunch_id])
@comment.save
end