点击ajax创建记录

时间:2016-06-09 12:18:44

标签: jquery ruby-on-rails ajax

我有一个元素列表,它们应该在单击时创建或删除表中的记录。每个元素都有一些与之关联的数据属性,以创建/销毁正确的记录。我想知道正确的“轨道”方式来实现这一目标吗?

元素列表:

<div>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="1">Lisa</h3>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="2">Karen</h3>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="3">Susan</h3>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="4">Liz</h3>
</div>

1 个答案:

答案 0 :(得分:1)

您可以使用ajax-rendering

假设有一个名为SwimmerController的控制器,它应该从模型中创建/删除您的数据。

class SwimmerController
   respond_to :js
   def create
      # create something
      render :layout => false # you can turn that off and can render a partial
   end

   def destroy
      # destroy something
      render :layout => false 
   end
end

现在,在视图中,添加:远程=&gt;触发元素的真实标志

<div>
    <a href="<%= create_path_of_swimmer_controller %>" data-remote="true" method="post"><h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="1">Lisa</h3></a>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="2">Karen</h3>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="3">Susan</h3>
    <h3 data-date="2016-06-11 09:00:00 UTC" data-swimmer-id="4">Liz</h3>
</div>

为了更好地理解,请参阅this post