Nel modello, usando il before_validate richiamo un metodo protected e
faccio una cosa del genere:
self.prova = self.att + 90.days.
Ho pensato che non fosse molto corretto assegnare valori agli
attributi direttamente dal modello e che fosse piu’ ortodosso farlo
dal controller.
Cosi’ nel metodo create del controller ho fatto una cosa del genere:
@model = Model.new
@model.prova = @model.att + 90.days-
C’e’ pero’ qualcosa che non va in quanto all’attributo non viene
assegnato alcun valore.
Il codice nel modello invece funzionava perfettamente nel senso che
l’attributo .prova veniva valorizzato.
lo chiami @model.save ?
altrimenti non salva il dato su db
ciao,
A.
Il 07/01/2011 22:51, Mauro ha scritto:
@model.prova = @model.att + 90.days
2011/1/8 Andrea P. [email protected]:
lo chiami @model.save ?
altrimenti non salva il dato su db
certo, questo e’ il codice:
def create
@supplier = Supplier.new(params[:supplier])
@supplier.prova = @supplier.att + 90.days
respond_to do |format|
if @supplier.save
format.html { redirect_to(@supplier, :notice => t('Supplier
was successfully created.')) }
format.xml { render :xml => @supplier, :status => :created,
:location => @supplier }
else
format.html { render :action => “new” }
format.xml { render :xml => @supplier.errors, :status =>
:unprocessable_entity }
end
end
end
centra qualcosa il fatto che “prova” e “att” sono date?