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

On 20 September 2011 12:36, paulo [email protected] wrote:

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.