0
我有一个嵌套的表格结构如下:嵌套表格 - 阿贾克斯删除
class List < ActiveRecord::Base
has_many :restaurants, :dependent => :destroy
end
class Restaurant < ActiveRecord::Base
belongs_to :list
end
我可以在我创建/编辑列表相同的形式添加餐厅项目特定列表。为了嵌套列表形式我做了以下范围内的餐饮项目:
<%= f.fields_for :restaurants do |builder| %>
<%= render 'restaurant_fields', f: builder %>
<% end %>
<%= link_to_add_fields "+ add to stack", f, :restaurants %>
的餐馆场部分有一个链接删除项目:这些行动
<%= link_to "remove stack item", '#', class: "remove_fields" %>
了jQuery(CoffeeScript的)如下:
jQuery ->
$('form').on 'click', '.remove_fields', (event) ->
$(this).prev('input[type=hidden]').val('1')
$(this).closest('fieldset').hide()
event.preventDefault()
$('form').on 'click', '.add_fields', (event) ->
time = new Date().getTime()
regexp = new RegExp($(this).data('id'), 'g')
$(this).before($(this).data('fields').replace(regexp, time))
event.preventDefault()
当我点击删除栈的项目,我想送一个Ajax请求,以使堆项目(餐厅)不只是从视图中隐藏(见上文),而且日e实际记录同时被删除。你会如何建议我去做这件事?
看看这个http://railscasts.com/episodes/197-nested-model-form-part-2?view=asciicast这将是这些好的教程种类的东西 – abhas