accept_nested_attributes_for rails 4 no se está eliminando

He estado leyendo e investigando por cerca de 3 días ahora. Este es mi ultimo recurso.

land.rb:

has_many :uploads , :dependent => :destroy accepts_nested_attributes_for :uploads, :allow_destroy => true,:reject_if => :all_blank 

subir.rb

 belongs_to :land 

_land_form_partial.html.erb

  {:multipart => true} do |f| %>  

Delete:
#... buttons and other fields

lands_controller.rb

 def update if @land.update_attributes(land_params) flash[:success] = "Land updated" redirect_to lands_path else flash[:alert] = @land.errors.full_messages.first redirect_to edit_land_path end end def land_params params.require(:land).permit( uploads_attributes: [ :id, :filename ] ) end 

Cuando agrego algo al campo de texto y lo actualizo, todas se actualizan correctamente. Si hago clic en la checkbox, no se eliminará el campo.

¿Puede alguien por favor arrojar una luz sobre esto?

También probé los awesome_nested_fields. Todo funciona, excepto para eliminar el registro real.

gracias de antemano.

EDITAR: Solución: (Me gusta poner la solución en la pregunta en caso de que alguien quiera verla en el móvil, ya que odio cuando no puedo ver la solución de inmediato)

Gracias a @nTraum

 def land_params params.require(:land).permit( uploads_attributes: [ :id, :filename, :_destroy ] ) end 

Y todo será dandy 🙂

También debe permitir el parámetro :_destroy para su modelo nested, ya que este se usa cuando :_destroy la checkbox ‘Eliminar’ en el formulario. Es la forma en que Rails marca las instancias de modelos que deben ser destruidas.

 def land_params params.require(:land).permit(uploads_attributes: [:id, :filename, :_destroy]) end 

El OP no tuvo el mismo problema que yo, pero para cualquiera que se encuentre con esta pregunta, para mí, fue la ausencia de allow_destroy: true como un argumento en la llamada accepts_nested_attributes del modelo.