Ho una form che va a creare dei record del modello/tabella questions.
Il mio problema è che un campo del modello viene settato da controller
nell’azione NEW, e non tramite form. Quindi la validazione del modello
mi da errore, perchè dice che manca quel campo (quando passo all’azione
CREATE).
In un form è quindi obbligatorio inserire tutti i campi del modello ??
Il mio problema è che un campo del modello viene settato da controller
nell’azione NEW, e non tramite form. Quindi la validazione del modello
mi da errore, perchè dice che manca quel campo (quando passo all’azione
CREATE).
Se in create fai “User.new(params[:user])”, vengono settati solo gli
attributi che arrivano dal form.
Dovresti risettare quell’attributo anche in create.
Il problema però è che in NEW uso (per impostare il campo):
@question.tipologia = params[:tipo]
ovvero il valore viene preso dal parametro :tipo con cui viene invocata
l’azione NEW; non posso fare la stessa cosa per l’azione CREATE, perchè
a quel punto essa non ha più a disposizione un parametro :tipo.
Metti un campo hidden nel form: <%= f.hidden_field :tipologia %>
In questo modo l’attributo viene inviato a create e non hai bisogno di
reimpostarlo.
Il mio problema � che un campo del modello viene settato da controller
nell’azione NEW, e non tramite form. Quindi la validazione del modello
mi da errore, perch� dice che manca quel campo (quando passo all’azione
CREATE).
Se in create fai “User.new(params[:user])”, vengono settati solo gli
attributi che arrivano dal form.
Dovresti risettare quell’attributo anche in create.
Il problema però è che in NEW uso (per impostare il campo):
@question.tipologia = params[:tipo]
ovvero il valore viene preso dal parametro :tipo con cui viene invocata
l’azione NEW; non posso fare la stessa cosa per l’azione CREATE, perchè
a quel punto essa non ha più a disposizione un parametro :tipo.
Soluzioni a riguardo ??
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.