There are couple of cheat sheets about Ruby on Rails and related technologies can be found in the web. I decided to collect all of them (almost all) in one post just to keep them in mind. All of them are in full color PDFs or PNGs.
Flexible application configuration in Ruby on Rails
In my current project in Ruby on Rails I need to store application specific configuration. There are several approaches I’ve found: AppConfig plugin, several methods described on HowtoAddYourOwnConfigInfo wiki page, but neither one looks “config-like”. Me with my friend, Alexey Kovyrin, discovered all of them and decided to use YAML-file. Ideal configuration, I think, file looks like following:
support_email: admin@myhost.com
root_url: myhost.com
photos_max_number: 6
production:
email_exceptions: true
development:
root_url: localhost:3000
photos_max_number: 10
In this example you can see three sections: common will be used as base configuration for all environments, production and development - environment specific options. Possible sections are production, development, and testing, or any other custom environment name. I’ve placed this file in config/config.yml and added following code to config/environment.rb:
require 'yaml'
config = OpenStruct.new(YAML.load_file("#{RAILS_ROOT}/config/config.yml"))
env_config = config.send(RAILS_ENV)
config.common.update(env_config) unless env_config.nil?
::AppConfig = OpenStruct.new(config.common)
Now I’m able to use constructions like AppConfig.support_email and AppConfig.root_url. Looks like I’ve kept all my configs as DRY as possible
Upgrading Apache to version 2.2 in Debian
Great news, guys! Apache 2.2 is in unstable now. I was very discouraged when tried to do apt-get install apache2-utils and it proposed me to remove apache2 and install it again
I decided to install new version to test rails with Apache 2.2, mod_proxy_balancing and mongrel. In this post I’ve described my adventures (or misfortunes?)
Русский
English