[ruby-it] has_and_belongs_to_many come riempire la join table?

Pietro Giorgianni giorgian a gmail.com
Lun 16 Feb 2009 08:58:01 CET


2009/2/15 Mauro <mrsanna1 a gmail.com>:
> [...]
> Si pone pero' il problema che l'oggetto supplier non e' visibile
> nell'action filter_category_in_ sector.

che importa? filter_category_on_sector deve solo mostrare le categorie
per un certo settore; sarà poi l'action del form (create, suppongo) a
ricevere tutti i dati. l'action dovrà fare qualcosa tipo:

@supplier = Supplier.create(params[:supplier])

sta invece al supplier stesso fare la cosa giusta, ovvero prendere,
dopo la creazione, i dati dell'attributo virtuale (ovvero gli id delle
categorie) e usarli per riempire categories.

se hai dubbi, prova semplicemente a loggare il contenuto di params
nell'action (logger.debug params.inspect), e dagli un'occhiata: vedrai
come vengono resi i campi del fields_for.

questa cosa degli attributi virtuali viene usata spesso: ad esempio,
molti plugin di autenticazione usano due attributi virtuali
sull'oggetto utente, con nomi tipo password e password_confirm, e
bloccano invece il mass assignment del vero campo password, così al
salvataggio controllano se password e password_confirm sono stati
assegnati, e se sì che siano uguali, e infine riempiono il vero campo
password (quello che sta sul db).


More information about the Ml mailing list