0

我有 2 个模型,帖子和评论。我想在发布显示视图上创建一个按钮,将其定向到评论新操作。所以我在 Post 中创建了一个新动作:

  def comment
    @post = Post.find(params[:id])

    redirect_to new_comment_path
  end

我想将 post_id 保存在 Comment 模型中,所以我在新的评论表单中创建了 d 隐藏字段:

  <div class="field">
    <%= f.hidden_field :post_id, :value => @post.id %>
    <%= f.label :body %><br />
    <%= f.text_field :body %>
  </div>

但是出现了错误:“Called id for nil”。

我很新,有人可以帮忙吗?还是我应该使用其他方法?

4

1 回答 1

1

那么你错过了传递价值,我已经尝试过这种方式并且它可以工作,例如你的例子。

编辑:

redirect_to :controller=>'comments', :action=>'new_comment', :post_id=>@post.id

接收为@post_id = params[:post_id]

于 2013-10-11T09:52:52.183 回答