Wie initialisiere ich einen ActiveRecord mit Werten in Rails?

In normalem Java würde ich verwenden:

<code>public User(String name, String email) {
  this.name = name;
  this.email = f(email);
  this.admin = false;
}
</code>

Mit ActiveRecords konnte ich jedoch keine einfache Standardmethode für Rails (3.2.3) finden.

1. Initialisierung überschreiben
<code>def initialize(attributes = {}, options = {})
  @name  = attributes[:name]
  @email = f(attributes[:email])
  @admin = false
end
</code>

aber es könnte beim Erstellen eines verpasst werdenDatensatz aus der DB

2. mit derafter_initialize Ruf zurück

durch Überschreiben:

<code>def after_initialize(attributes = {}, options = {})
  ...
end
</code>

oder mit dem Makro:

<code>after_initialize : my_own_little_init
def my_own_little_init(attributes = {}, options = {})
  ...
end
</code>

aber es kann seinEinige Verfallsprobleme.

Dort sind einigeandere linksin SO, aber sie sind möglicherweise veraltet.

So,Was ist die richtige / Standardmethode?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage