使用ajax更新rails视图中的帖子

时间:2014-08-29 18:46:51

标签: jquery ruby-on-rails ajax

如何编写用于添加帖子的javascript,点击"提交帖子"使用Ajax的按钮?此外,javascript文件是否会被称为index.js.haml或create.js.haml? 以下是相关文件:

index.html.haml:

.post#new_post    
    - @posts.each do |post|
        = post.body
    = render partial: "form"

_form.html.haml:

= bootstrap_form_for @post, remote: true do |f|
    = f.text_area :body, label: "", required: true
    = f.submit "Submit Post", class: "button"

帖子控制器(索引和创建方法):

def index
    load_posts # a method I use for loading posts
end

def create
if @post.save
  respond_to do |format|
    format.js
    format.html do
      flash[:success] = "Saved."
    end
  end
else
  load_posts
  flash.now[:error] = "Sth went wrong. "
  render :index
end

JS for ajaxifying:

$('#new_post').append('#{escape_javascript(render(@post))}');

非常感谢!

1 个答案:

答案 0 :(得分:1)

在您的观看次数/帖子中创建一个文件create.js.haml并添加以下内容

$('#new_post').append("<%= @post.body %>");