Peter

On 9-Jan-09, at 11:44 AM, Harold wrote:

>
> You can do
>
> solr_conf = open('path/to/solr.yml', 'r') { |f| YAML.load(f) }
>
> solr_conf now holds a hash with your parameteres. You can access it
> simply by doing something like:
>
> url = solr_conf[RAILS_ENV][:url]
>
> On Jan 9, 11:33 am, scott <[email protected]> wrote:
>> you could code it yourself, i think there is a railscast that shows  
>> an
>> easy way to do it. or you could use one of the many plugins or gems
>> out there. i just recently 
>> usedhttp://github.com/binarylogic/settingslogic/tree/master
>>
>> On Jan 9, 9:32 am, Peter Hickman <[email protected]> wrote:
>>
>>> I have a web site that accesses Solr (a Lucene based search engine
>>> accessed via REST). I would like the configuration to be handled in
>>> the same was as database.yml. I envision a file called solr.yml that
>>> looks something like this in the config directory:
>>
>>> development:
>>>    url:http://dev.solr.example.com/search
>>
>>> test:
>>>    url:http://test.solr.example.com/search
>>
>>> production:
>>>    url:http://production.solr.example.com/search
>>
>>> If I was to write this file how would I access it?
>>
>>> Any pointers would be appreciated as it would aid testing and I  
>>> have a
>>> couple of other projects that could use this technique.
>>

If you take this approach, you can also embed erb in your yaml, and  
get a nice little object with your config at hand:

require 'ostruct'
raw_config = File.read("#{RAILS_ROOT}/config/config.yml")
erb_config = ERB.new(raw_config).result
config = YAML.load(erb_config)[RAILS_ENV]
HomestarsConfig = OpenStruct.new(config)

so if you had a config setting of mail_server,

you could access it HomestarsConfig.mail_server

J


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to