Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails Activeadmin:复选框值不保存_Ruby On Rails_Activeadmin - Fatal编程技术网

Ruby on rails Rails Activeadmin:复选框值不保存

Ruby on rails Rails Activeadmin:复选框值不保存,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,模型 问题在于认证类型字段。 当我在activeadmin页面中勾选一种类型时,该条目不会保存在数据库中。但是,当我用as::select更改as::复选框时,它会起作用 你知道这有什么原因吗 谢谢您不能在此处使用复选框,因为复选框允许为一个字段选择多个值,但您没有在枚举上指定multiple:true(因为我想您不需要)。因此,您应该使用单选按钮,因为它们只允许选择多个值中的一个(类似于select) 尝试将as::复选框更改为as::radio: # admin/certification

模型

问题在于
认证类型
字段。 当我在activeadmin页面中勾选一种类型时,该条目不会保存在数据库中。但是,当我用
as::select
更改
as::复选框时,它会起作用

你知道这有什么原因吗


谢谢

您不能在此处使用复选框,因为复选框允许为一个字段选择多个值,但您没有在
枚举
上指定
multiple:true
(因为我想您不需要)。因此,您应该使用单选按钮,因为它们只允许选择多个值中的一个(类似于
select

尝试将
as::复选框
更改为
as::radio

 # admin/certification.rb

ActiveAdmin.register Certification do
   permit_params :name,
                 :certification_type,

  form :html => { :enctype => "multipart/form-data" } do |f|
       f.inputs "Certifications" do
         f.input :name, :label => 'Nom'
         f.input :certification_type, :label => 'Type',
                                    as: :check_boxes
      end
     f.actions
  end
end

使用复选框并提交表单时,在请求参数中传递了什么?(您可以在日志中看到这一点)
 # admin/certification.rb

ActiveAdmin.register Certification do
   permit_params :name,
                 :certification_type,

  form :html => { :enctype => "multipart/form-data" } do |f|
       f.inputs "Certifications" do
         f.input :name, :label => 'Nom'
         f.input :certification_type, :label => 'Type',
                                    as: :check_boxes
      end
     f.actions
  end
end
 f.input :certification_type, :label => 'Type', as: :radio