-
Notifications
You must be signed in to change notification settings - Fork 1
Easy Merb Application Configuration and Asset Bundling via YAML.
License
merbjedi/app_config
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
== Summary Application level configuration. == Author Jacques Crocker Modified from Original Project (AppConfig by Christopher J. Bottaro) === Compatibility Rails 2.1/2.2 and Merb 1.0 === Installing on Merb add this to your config: dependencies.rb and run thor merb:gem:install dependency "merb_app_config" === Installing on Rails script/plugin install git://github.com/merbjedi/app_config.git === Accessing the AppConfig object After installing this plugin, the AppConfig object will be global available. Entries are accessed via object member notation: AppConfig.my_config_entry Nested entries are supported: AppConfig.my_section.some_entry === Common config file Config entries are compiled from config/app_config.yml config/app_config/settings.yml config/app_config/#{environment}.yml config/environments/#{environment}.yml config/app_config/assets.yml config/app_config/stylesheets.yml config/app_config/javascripts.yml settings defined in files that are lower in the list override settings higher === Reloading config files You can reload the AppConfig from file at any time by running AppConfig.reload! === Environment specific config files You can have environment specific config files. Environment specific config entries take precedence over common config entries. Example development environment config file: RAILS_ROOT/config/environments/development.yml Example production environment config file: RAILS_ROOT/config/environments/production.yml === Embedded Ruby (ERB) Embedded Ruby is allowed in the configuration files. See examples below. === Accessing Configuration Settings Consider the two following config files. RAILS_ROOT/config/app_config.yml: size: 1 server: google.com RAILS_ROOT/config/environments/development.yml: size: 2 computed: <%= 1 + 2 + 3 %> section: size: 3 servers: [ {name: yahoo.com}, {name: amazon.com} ] Notice that the environment specific config entries overwrite the common entries. AppConfig.size -> 2 AppConfig.server -> google.com Notice the embedded Ruby. AppConfig.computed -> 6 Notice that object member notation is maintained even in nested entries. AppConfig.section.size -> 3 Notice array notation and object member notation is maintained. AppConfig.section.servers[0].name -> yahoo.com AppConfig.section.servers[1].name -> amazon.com ==== Managing Asset Files with AppConfig Defining stylesheets: and/or javascripts: keys will allow you to easily manage lists of assets via config javascripts: - application.js - prototype_scriptaculous: - prototype.js - scriptaculous/effects.js - base: - libraries/*.js All * file paths will be expanded out into a full list of files. To add these javascripts to your layout just run <%= javascripts_from_config %> This will group the assets by key in order to use the built in Bundling
About
Easy Merb Application Configuration and Asset Bundling via YAML.
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published