我有2个模型,帖子和评论。我想在Post show视图上创建一个按钮,将其定向到Comment new action。所以我在Post中创建了一个新动作:
def comment
@post = Post.find(params[:id])
redirect_to new_comment_path
end
我想在评论模型中保存post_id,因此我在新评论表单中创建了隐藏字段:
<div class="field">
<%= f.hidden_field :post_id, :value => @post.id %>
<%= f.label :body %><br />
<%= f.text_field :body %>
</div>
但是出现了错误:“被称为id为nil”。
我很新,有人可以帮忙吗?或者我应该使用其他方法吗?
答案 0 :(得分:1)
你错过了传递价值,
我试过这种方式并且它的工作原理,为你的例子。
<强>编辑:强>
redirect_to :controller=>'comments', :action=>'new_comment', :post_id=>@post.id
收到@post_id = params[:post_id]