2015-12-29 91 views
1

型號Rails的Activeadmin:複選框值不保存

# certification.rb 

class Certification < ActiveRecord::Base 

extend Enumerize 
enumerize :certification_type, in: [:SEO, :CRM] 

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 

的問題是與certification_type領域。 當我在我的activeadmin頁面中勾選一個類型時,該條目不會保存在數據庫中。但是當我用as: :select更改as: :check_boxes時,它可以工作。

你知道是否有原因?

謝謝

+0

當您使用複選框並提交表單,什麼是在請求參數傳遞? (你可以在日誌中看到這個) – Jeiwan

回答

2

你不能在這裏使用複選框,爲複選框允許一個字段中選擇多個值,但你沒有在enumerize指定multiple: true(因爲你不需要這些,我猜)。所以你應該使用單選按鈕,因爲它們只允許選擇多個值中的一個(類似於select)。

嘗試改變as: :check_boxesas: :radio

f.input :certification_type, :label => 'Type', as: :radio 
+0

謝謝你的工作:) – Matt