I do it in the model, too, and also validate that nothing else can get in that column in the database:
GENDERS = %w(Male Female) validates_inclusion_of :gender, :in => GENDERS On Mon, Jun 11, 2012 at 4:57 PM, Miguel Morales <[email protected]> wrote: > Don't know what the best practice is, but the way I do it is in the model > > class User < ActiveRecord::Base > UserGenders = {:male => 1, :female => 2} > end > > Then from code I just do if user.gender_id == User::UserGenders[:male] > > > On Mon, Jun 11, 2012 at 1:45 PM, Matt Martini <[email protected]> > wrote: >> >> Hello, >> >> What is the best way to to do enumerations of values that you want to use >> to provide values for a field. There are many cases where you want the user >> to choose from a list of values, but you really don't need a whole model to >> support. Yet, it should be flexible enough to able to be changed. >> >> A simple example would be a gender field in a person record. There needs >> to be somewhere to store the 'male' and 'female' values to be used in a >> select field, >> but we don't want to hard code these values because later we might add >> 'unknown' as an option, or change to 'boy' and 'girl'. With only two values >> it seems pointless to have a whole model dedicated to this, yet it still >> needs to be somewhat dynamic as the values could change. >> >> What is the best practice for this type of data? >> >> Matt >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Ruby on Rails: Talk" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/rubyonrails-talk?hl=en. >> > > > > -- > ~ Jeremiah:9:23-24 > Android 2D MMORPG: > http://solrpg.com/, http://www.youtube.com/user/revoltingx > > -- > You received this message because you are subscribed to the Google Groups > "Ruby on Rails: Talk" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/rubyonrails-talk?hl=en. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.

