How do I access a Rails configuration value during runtime?

I'm using Rails 2.3.x. I would like a small section of code to run if and only if the config.cache_classes is true. By default, that's true for production and false for development.

How do I access the value of config.cache_classes from outside of my environment.rb, development.rb, and production.rb files? It's easy to tell if we are in production or development, Rails.env will give us the answer. But there's no guarantee the developer hasn't set config.cache_classes = true in development.

I certainly understand that you do not generally want to run separate code paths in development and production. In this particular instance, we are simply not performing some work on startup; if we need to perform it later, we will do so, both in development and production.

Answers


For Rails 2, you can do:

Rails.configuration.cache_classes

If you ever switch to Rails 3, it'll be different; you can access the same value with:

Rails.application.config.cache_classes

Need Your Help

Flot graph not working, but not erroring

jquery flot

So I have Flot running, the graph axis etc draws, however the points do not get plotted.

How do I remove duplicates rows in my MySQL database? (Keep the one with lowest Primary ID)

sql mysql database unique

Let's say I want to first select rows which have download_link the same. Then, I want to keep the one that has lowest primary id, and throw away the rest.