gpt4 book ai didi

ruby-on-rails-4 - ActiveAdmin 重复嵌套表单并删除复选框不起作用

转载 作者:行者123 更新时间:2023-12-05 00:25:08 25 4
gpt4 key购买 nike

该表单可以将项目添加到模型中,但不会删除项目!更糟糕的是,任何更新都会复制所有嵌套表单(1x2=2,然后下一次更新为每个表单生成 4 个,等等)

app/admin/project.rb

ActiveAdmin.register Project do

permit_params :title, :description, :git_url, :demo_url, :version, :lastpublished, :firstpublished,
project_features_attributes: [:project_id, :description, :_destroy => true],
project_mentions_attributes: [:project_id, :title, :url, :published, :_destroy => true]

form do |f|
f.semantic_errors *f.object.errors.keys
f.inputs
f.buttons
end

form do |f|
f.inputs "Project Details" do
f.inputs :title
f.inputs :description
f.inputs :git_url, :default => "http://github.com/"
f.inputs :demo_url
f.inputs :version
f.inputs :firstpublished
f.inputs :lastpublished
f.inputs do
f.has_many :project_features,
:allow_destroy => true,
:heading => 'Features' do |cf|
cf.input :description
end
end
f.inputs do
f.has_many :project_mentions,
:allow_destroy => true,
:heading => 'Mentions' do |cf|
cf.input :title
cf.input :url
cf.input :published
end
end

end


f.actions
end
end

应用程序/模型/project.rb
class Project < ActiveRecord::Base
has_many :project_features, :dependent => :destroy
accepts_nested_attributes_for :project_features,
:reject_if => lambda{ |a| a[:description.blank?] },
:allow_destroy => true

has_many :project_mentions, :dependent => :destroy
accepts_nested_attributes_for :project_mentions,
:reject_if => lambda{ |a| a[:title.blank?] },
:allow_destroy => true

has_many :blogs

end

应用程序/模型/project_feature.rb
class ProjectFeature < ActiveRecord::Base
belongs_to :project

end

应用程序/模型/project_feature.rb
class ProjectMention < ActiveRecord::Base
belongs_to :project

end

最佳答案

试试 :_destroy而不是 :_destroy => true在 permit_params 块中。

复制:删除公用文件夹的内容。在开发模式下,您不必预编译 Assets 。

更新:您必须允许相关记录的 ID:

project_features_attributes: [:id, :project_id, :description, :_destroy],
project_mentions_attributes: [:id, :project_id, :title, :url, :published, :_destroy]

关于ruby-on-rails-4 - ActiveAdmin 重复嵌套表单并删除复选框不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24967581/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com