2014-05-13 65 views
0

在rails 4中使用activeadmin時,必須將permit_params設置爲允許保存字段。允許has_many多選與rails 4和活動管理員

簡單的字段正在工作,但是has_many字段的多重選擇被忽略。我如何設置該字段的permit_params?

所以家裏的has_many提供商和我的管理是這樣的:

ActiveAdmin.register Home do 
    permit_params :title, :intro, :providers, :providers_attributes => [:id] 
    menu :parent => "Content" , :label => "Home Page" 
    form do |f| 
    f.semantic_errors *f.object.errors.keys 
    f.inputs do 
     f.input :title 
     f.input :intro 
     f.input :providers 
    end 
    f.actions 
    end 

    index do 
    column :link 
    actions 
    end 
end 

回答

0

我不知道他們是否與軌道4改變了它..但我一直在做這樣說

form do |f| 
    f.semantic_errors *f.object.errors.keys 
    f.inputs do 
     f.input :title 
     f.input :intro 
    end 
    f.has_many :providers do |pf| 
     pf.input :title #or whatever attributes you have there 
     pf.input :_destroy, :as => :boolean, :label => "Delete" if !pf.object.nil? 
    end 
    f.actions 
end 

而在你model.rb你應該有類似的東西

attr_accessible :providers_attributes 

has_many :providers 
accepts_nested_attributes_for :providers, :allow_destroy => true 

讓我知道這是否有助於!

+0

謝謝,但是耶路軌4改變了事情。強大的參數意味着我們現在需要在控制器或活動管理員類中設置允許的屬性。此外,我不希望嵌套表單創建新的提供者,我只想選擇其中的一些 - 它在主頁上的一個精選框 – Will

相關問題