2014-03-30 2 views
3

У меня есть модель кампании и модель категории. У них есть много-сквозные отношения друг с другом. Промежуточная модель - campaign_categories. кампании:Formtastic имеет много через ассоциацию

class Campaign < ActiveRecord::Base 
    attr_accessible :name, :carousel_image, :show_in_carousel, :title, :carousel_description, 
        :video_embed_code, :goal, :end_date, :backer_count, :author_name, :author_photo, 
        :author_description_md, :author_description_html, :description_markdown, :description_html, 
        :funds_description_md, :funds_description_html, :campaign_status_id 


    #associations 
    has_many :campaign_categories 
    has_many :categories, through: :campaign_categories 

конец

Категория:

class Category < ActiveRecord::Base 
    attr_accessible :name 

    #associations 
    has_many :campaign_categories 
    has_many :campaigns, through: :campaign_categories 
end 

Campaign_Category:

class CampaignCategory < ActiveRecord::Base 
    attr_accessible :campaign_id, :category_id 
    belongs_to :campaign 
    belongs_to :category 
end 

Я следующее campaigns.rb для Activeadmin:

ActiveAdmin.register Campaign do 

    form :html => { :enctype => 'multipart/form-data'} do |f| 
    f.inputs "Campaign Basic Information" do 
     f.input :name 
     f.input :categories 
    end 
    f.actions 
    end 
end 

Категории отображаются правильно в многопозиционном окне. Но я получаю следующую ошибку при отправке формы: Невозможно назначить защищенные атрибуты: category_ids

Я пробовал называть accepts_nested_attributes_for: categories в кампании, но это не сработало. Как я могу решить эту проблему? Благодарю.

ответ

1

Добавление: category_ids к вашему attr_accessible вызову в модели Campaign должно сделать это

Смежные вопросы