¿Cómo inicializar un ActiveRecord con valores en Rails?
En java llano yo usaría:
public User(String name, String email) {
this.name = name;
this.email = f(email);
this.admin = false;
}
Sin embargo, no pude encontrar una forma estándar simple de hacerlo en los rieles (3.2.3), con ActiveRecords.
1. anular inicializardef initialize(attributes = {}, options = {})
@name = attributes[:name]
@email = f(attributes[:email])
@admin = false
end
pero se puede perder al crear unagrabar desde el DB
2. usando elafter_initialize
llamar de vueltapor anularlo:
def after_initialize(attributes = {}, options = {})
...
end
o con la macro:
after_initialize : my_own_little_init
def my_own_little_init(attributes = {}, options = {})
...
end
pero puede haberalgunos problemas de desaprobación.
Hay algunosotro campo de golfen lo, pero pueden estar desactualizados.
Asi que,¿Cuál es el método correcto / estándar para usar?