几个月前我就开始使用rails了,我正在开发一个reddit类型的应用程序。我只需要对我的工作进行双重检查,以获得有关comments views / create.js.erb文件的提示。这是代码的“框架”:
if the comment is valid
add the comment to the list of comments
else
render an error on the form
end
这就是我认为它会被表达的方式。我使用“.show”和“.prepend”是否正确?或者我只是一起错了?我是否需要提供其他信息?谢谢你的帮助
<% if @comment.created? %>
$<'#comment-' +<%= @comment.id %>.show();
<% else %>
$('#comment-' +<%= @comment.id %>).prepend("<div class='alert alert-danger'><%flash[:error] %></div>");
<% end %>
在评论中添加了请求:
def create
@post = Post.find(params[:post_id])
@comments = @post.comments
@comment = current_user.comments.build( comment_params )
@comment.post = @post
@new_comment = Comment.new
authorize @comment
if @comment.save
flash[:notice] = "Comment was saved"
else
flash[:error] = "There was an error saving the comment. Please try again."
end
respond_to do |format|
format.html
format.js
end
end