System-wide db-driven config

Hi folks,

Just after a 'best-practise' pointer with this one really;

I have a 'setup' model for my application which only has a single record, holding the current settings of the app e.g. its mode (maintenance, normal, readonly) etc

I need to check the app's settings, at least once per page-load, sometimes more.

I know I could do this easily by pulling the record each time but was wondering if using global variables or something like a helper would be better? I do need to make these calls in both the controllers and views however.

Thanks in advance,

Paul

Hi folks,

Hello,

Just the one post would suffice :wink:

I know I could do this easily by pulling the record each time but was wondering if using global variables or something like a helper would be better? I do need to make these calls in both the controllers and views however.

Have a look at something like SettingsLogic - which stores site-settings as a YAML file, and is globally accessible as a singleton model.

If you *need* to store the settings in the DB (for easy access to change them for instance), then there are some alternative gems that offer this sort of "global site settings" functionality (or you could just change SettingsLogic to serialise to a model... Have a look on http://ruby-toolbox.com/ as one source for comparisons.