4 ms·
Doing it this complex way would never have occurred to me. I would simply create an accessor method in the ActiveRecord model that doesn't exist in the database
by mattmcknight 17y ago
Doing it this complex way would never have occurred to me. I would simply create an accessor method in the ActiveRecord model that doesn't exist in the database to take the hash and have it set the database field as a side effect, or in a before_save filter.
- texel 17y agoYes, I suppose that would have worked as well, and would've been more in the spirit of the first attempt at a solution, but it wouldn't have been very general, and it certainly wouldn't have worked for all models in the application (without a lot of manual intervention).
- mattmcknight 17y agoOh, it could be made general, just add the name of the actual datetime field as a parameter of the hash. Then you could drop the method into ActiveRecord. Anyway, the second solution is okay, because it is explicit enough. However it it still builds a dependency on define_attribute_methods.