Ciao, sto svillupando con rails 3 ed ho un form con un hash
il problema e che quando salvo con il metodo create i params nel
database il valore del campo mi diventa
— !ruby/hash:ActiveSupport::HashWithIndifferentAccess\n!binary
“aXQ=”
Qualche dritta?
Ciao Alessio,
dovresti indicare come sono definiti i modelli, non ho capito cosa sia
person[birthplace[it]]
person è il modello, birthplace è l’attributo, it?
Comunque è corretto ricevere un hash, hai provato così?
person[birthplace][it]
Ciao:
il modello e:
person entita
bithplace attributo di tipo testo.
Visto che l app e multilinuga italiana e tedesca creo questo tag con le
diverse lingue. Il problema e che se eseguo params.inspect nella
funzione create vedo
{“utf8”=>“✓”,
“authenticity_token”=>“RvpwQw/RdTAT2d4jtaSyBAYRgT1mKgWg9kyrS7pUnMo=”,
“person”=>{“birthplace”=>{“it”=>“Padova”, “de”=>“Padovan”}},
“commit”=>“Create Person”, “action”=>“create”, “controller”=>“people”}
ma birthplace nel database viene salvato come
— !ruby/hash:ActiveSupport::HashWithIndifferentAccess\nit: Padova\nde:
Padovan\n
Anche se provo a cambiare
person[birthplace[it]]
con
person[birthplace][it]
viene salvato nello stesso modo. Se invece provo con rails c
person.birthplace={“it”=>“Salisburgo”, “de”=>“Salisburgo”}
person.save!
allora viene salvato correttamente quindi deve essere il passaggio da
html a controller a database che non va