OT: Best practice for multi-user select boxes

I’m working on an application where several customers will be using the
database. I want them to be able to build their own entries for various
drop-down lists is if they were the only user of the application. I
don’t want to make building the drop-lists any harder than they need to
I have thought of two ways to do this. I’d appreciate feedback and
as to which method might be better .

  1. Break normalization rules by putting the customer_id in every
    table. This would make it easier to create the droplists using the
    ‘acts_as_dropdown’ plugin.

  2. Keep the table fully normalized. Use find_by_sql to create the
    joins to populate the drop-lists for each customer_id.

  3. Something else entirely.