【发布时间】:2015-04-29 07:53:26
【问题描述】:
现在,我的 Rails 应用程序中有一个“投票”模型。页面上的每个帖子都有一个upvote按钮,目前写成:
<%= link_to "✓", votes_path(:vote => {:post_id => post.id, :up => false}), :method => :post %>
其中 post_id 是投票链接到的帖子,up 是表示投票为真的布尔值。我正在尝试使用 JQuery 而不是 link_to,以便每次有人投票时页面都不会重新加载。但是,我不明白 AJAX 发布请求如何与数据库模型交互。
编辑:投票控制器:
def create
respond_to do |format|
format.html
format.js { flash[:notice] = "Vote created"} # and render your <action>.js file}
end
@vote = Vote.where(:post_id => params[:vote][:post_id], :user_id => current_user.id).first
if @vote
@vote.up = params[:vote][:up]
@vote.save
else
@vote = current_user.votes.create(vote_params)
end
redirect_to :back
end
【问题讨论】:
标签: javascript jquery ruby-on-rails ajax