title: Generic flags for a model in RoR
body: <p>I am making a Ruby on Rails app and am realizing that my User class could potentially end up with a lot of generic boolean / integer attributes.  For example, suppose I have a promotion each quarter, and I only want a person to be able to use the promotion once.  Then I'd have to make a new column each quarter has_used_promotion_N to track that promotion.</p>
  
  <p>Alternatively, I'm thinking of creating a new column called "Generic Flags" which is just a comma separated value of flags set on the account.  For example:</p>
  
  <p>"has_used_promotion_1, has_used_promotion_2, limit_on_feature_a=20" etc. could be set for some particular user</p>
  
  <p>(or maybe I'll store it as JSON)</p>
  
  <p>In any case, I'm thinking of giving myself some sort of NoSQL-like functionality in my DB.</p>
  
  <p>Is this really bad design for some reason?  Has anyone else done this before?  Anything I'm completely missing about RoR?</p>