1

これを機能させようとしていますが、問題がどこにあるのか本当にわかりません。これはコードです。コメントを作成した後、ページを更新せずにコメントをレンダリングしようとしています。

create.js.erb

$('.post').append("<%= escape_javascript render(@comment) %>");

コメント_コントローラー.rb

class CommentsController < ApplicationController
def create
    @post = Post.find(params[:post_id])
    @comment = @post.comments.create!(params[:comment])

    respond_to do |format|
        format.html
        format.js
    end
end
end

index.html.erb

<% @posts.each do |post| %>
    <div class="post">
        <p><strong> <%= post.title %> </strong>, posted <%= post.created_at.to_date %> </p> <br />
        <%= post.content %> <br />

        <%= simple_form_for [post, post.comments.build], :remote => true do |f| %>
            <%= f.input :content %>
            <%= f.button :submit %>
        <% end %>


        <% post.comments.each_with_index do |comment, i| %>
            <p> <%=i + 1%>.<%= comment.content %></p>
        <% end %>

    </div>

<% end %>

<p><%= link_to "New Post", new_post_path %></p> 
4

1 に答える 1

1

ajax および js コードをデバッグできるように、firefox 用の firebugインストールします。私は通常、アプリケーションに ajax を追加してエラーがないことを確認するときに使用します。

于 2012-09-03T21:46:23.373 に答える