Rails 3 - 创建一个注释,然后使用JUST新注释返回Partial

时间:2010-09-27 06:19:16

标签: ruby-on-rails ruby-on-rails-3

这是我的流程......

首先,jquery将新评论发布到服务器:

$.post(this.action,$(this).serialize(),null,'script');

然后在评论控制器中:

  def create

    @comment =  lots of stuff going on here but it works...

    if @comment.save
      flash[:notice] = "Successfully created comment."
      respond_to do |format|
       format.js
    end
  end

好的,这就是我被困的地方,然后是create.js.erb:

$(".cmtBox").html("<%=escape_javascript(render :partial =>"comments/comment")%>");

部分:

<div class="cmtBox" id="comment_<%=comment.id%>">
<%=comment.content%>
</div>

我被困在调用create.js.erb中的partial ...如何通过Rails需要填充部分?现在我收到错误:“被调用id为nil,这将错误地为4 - 如果你真的想要id为nil,请使用object_id”

谢谢!

1 个答案:

答案 0 :(得分:1)

您应该使用:

render :partial => @comment

render :partial => "comments/comment", :object => @comment

render :partial => "comments/comment", :locals => {:comment => @comment}