Вы должны использовать что-то подобное в вашем контроллере.Это будет запускать шаблоны js и html по мере необходимости.
class CommentsController < ApplicationController
respond_to :html
respond_to :js, only: [ :create ]
def create
# ...
respond_with @comment if @comment.save
end
def index
@comments = Microcomment.find(params[:id]).comments
respond_with @comments
end
end
Для этого потребуется, чтобы views / comments / create.js отвечали примерно так:
// create.js.erb
$("#comments").get("/api/micropost/<%= @micropost.id %>/comments");
И представление для комментариев будет index.html.erb
# index.html.erb
<% @comments.each do |comment| %>
<!-- Display your comment here -->
<% end %>
Теперь все, что вам нужно сделать, - это установить match
для /api/micropost/:id/comments
в ваших маршрутах, и это может затем послужить списком комментариев в желаемом формате html.
Обратите внимание, что этоне совсем успокаивает, но мне нравится держать там /api
, чтобы различать вызовы, поступающие от xhr на уровне URL.