2013-07-09 9 views
8

Ho un modello User con alcuni attributi, chiamiamoli foo e bar. Quindi il mio modello è simile al seguente:Rails 4: ActiveRecord non salva alcun attributo, salvando i valori predefiniti

class User < ActiveRecord::Base 
    attr_accessor :foo, :bar 
end 

Poi faccio la seguente:

user = User.new 
user.foo = "123" 
user.save! 

E il mio registro sviluppo spettacoli:

INSERT INTO "users" DEFAULT VALUES RETURNING "id" 

Poi se vado nella console Rails e fare User.first Ottengo qualcosa del tipo:

#<User id: 4, foo: nil, bar: nil> 

Sto utilizzando Postgres e non ho problemi a salvare altri modelli nel database, perché il mio modello User sta salvando i valori predefiniti?

risposta

26

attr_accessor sovrascrive gli attributi delle guide. Prova a rimuoverlo e dovrebbe funzionare.

+1

Questo deve essere specifico per le postrge. Qualcuno sa perché? –

+0

Mi piacerebbe sapere perché Postgres è il problema. –

Problemi correlati