这是我的流程......
首先,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”
谢谢!
答案 0 :(得分:1)
您应该使用:
render :partial => @comment
或
render :partial => "comments/comment", :object => @comment
或
render :partial => "comments/comment", :locals => {:comment => @comment}