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ückdurch Ü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?