Sono un binario noob quindi il sotto è probabilmente in difetto di comprensione, tuttavia ho cercato/leggere tutto il giorno e non riesco a trovare la soluzione.Creazione di un HABTM Rails 3 con Active Admin genera un 'Impossibile assegnare massa attributi protetti:' errore
ho due modelli - progetto e tecnologia:
Progetto:
class Project < ActiveRecord::Base
attr_accessible description, :name
has_and_belongs_to_many :technologies, :join_table => :projects_technologies
end
Tecnologia:
class Technology < ActiveRecord::Base
attr_accessible :abbr, :description, :name
has_and_belongs_to_many :projects, :join_table => :projects_technologies
end
La mia migrazione Create_Projects_Technologies è stata la seguente:
class CreateProjectsTechnologies < ActiveRecord::Migration
def self.up
create_table :projects_technologies, :id => false do |t|
t.references :project
t.references :technology
end
add_index :projects_technologies, [:project_id, :technology_id]
add_index :projects_technologies, [:technology_id, :project_id]
end
def self.down
drop_table :projects_technologies
end
end
sto quindi utilizzando Admin attivo per creare e modelli di modifica del project tramite il seguente form:
ActiveAdmin.register Project do
form do |f|
f.inputs "Project attributes" do
f.input :name
f.input :description
f.input :technologies, as: :check_boxes
end
f.buttons
end
end
Questo dimostra in modo corretto tutti i miei tecnologie come caselle di controllo però appena ho presentare il modulo mi ha colpito il seguente errore, che non sono stato in grado di superare:
ActiveModel :: :: MassAssignmentSecurity errore in Admin :: ProjectsController # aggiornamento
Can't mass-assign protected attributes: technology_ids
Ogni aiuto è molto molto apprezzato: D
Nel caso in cui nessun altro ottiene questo mio errore è venuto 'Non può mass-assegnazione protette: # {attrs.join} 'piuttosto che avere' category_ids'. – ScottJShea