[ruby-it] update automatico di un campo.

Mauro mrsanna1 a gmail.com
Gio 17 Dic 2009 13:03:18 CET


Vorrei che al momento della creazione di un nuovo oggetto venisse
valorizzato automaticamente uno dei suoi attributi.
I modelli in questione sono settori e categorie, in relazione uno a molti.
Il partial della view per la categoria e':

  <%= f.collection_select :sector_id, @sectors, :id, :name, :prompt =>
"seleziona il settore" %>
    <%= f.label :descrizione %><br />
    <%= f.text_field :descr %>
    <%= f.label :esempi %><br />
    <%= f.text_area :example %>
    <%= f.submit label_text %>

in questo modo la categoria e' associata ad un settore.
La categoria contiene un attributo codice che vorrei venisse
valorizzato automaticamente col valore dell'attributo codice del
settore.
Banalmente nel controller avevo fatto:



def create
    @category = Category.new(params[:category])
    @sectors = Sector.find(:all)
    @category.code = @sectors[params[:category][:sector_id].to_i]

pero' al codice della categoria viene assegnato un valore che non
corrisponde a quello del codice del settore selezionato nella select.
Logicamente mi sembrava corretto ma evidentemente non lo e'.


More information about the Ml mailing list