= Active Record Defaults If you find this plugin useful, please consider a donation to show your support! http://www.paypal.com/cgi-bin/webscr?cmd=_send-money Email address: jonathan.viney@gmail.com == Instructions Allow you to easily specify default values for attributes on new model objects. Eg: class Person < ActiveRecord::Base defaults :country => 'New Zealand', :type => 'Unknown', :address => proc { Address.new } default :last_name do |person| person.first_name end end The default value is only used if the attribute is not present in the attributes hash. Note that the defaults are evaluated when the model is loaded, so if a default is meant to be dynamic, such as today's date, it must be put inside a proc. class Person < ActiveRecord::Base default :today => Date.today # WRONG default :today => proc { Date.today } # RIGHT end Interestingly, because the model classes are reloaded for every request in development mode, the first default would always work as expected. But in production, where the model classes are only loaded once, the date will shortly become incorrect. See active_record_defaults.rb for full documentation. == Installation script/plugin install http://svn.viney.net.nz/things/rails/plugins/active_record_defaults == Help Feel free to email with any problems, suggestions, bugs etc... jonathan dot viney @ gmail . com