1 <!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2 <html xmlns=
"http://www.w3.org/1999/xhtml" lang=
"en" xml:
lang=
"en">
4 <meta http-equiv=
"Content-Type" content=
"text/html; charset=UTF-8" />
5 <title>Configuring Rails Applications
</title>
7 <script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
9 <link href=
"stylesheets/base.css" media=
"screen" rel=
"Stylesheet" type=
"text/css" />
10 <link href=
"stylesheets/forms.css" media=
"screen" rel=
"Stylesheet" type=
"text/css" />
11 <link href=
"stylesheets/more.css" media=
"screen" rel=
"Stylesheet" type=
"text/css" />
12 <style type=
"text/css">
36 border: solid
1px #cccccc;
52 #content dt tt, #content pre tt {
81 div#header h1#site_title {
82 background: url('images/ruby_on_rails_by_mike_rundle2.gif') top left no-repeat;
108 .left-floaty, .right-floaty {
120 .admonitionblock .icon {
124 .admonitionblock .content {
125 border: solid
1px #ffda78;
132 .admonitionblock .title {
134 margin-bottom:
0.5em;
138 border: solid
1px #aaaaff;
156 border: solid
1px #ccccbb;
161 .sidebarblock .sidebar-title {
164 margin-bottom:
0.3em;
167 .sidebarblock .sidebar-content
> .para:last-child
> p {
171 .sidebarblock .sidebar-title a {
172 text-decoration: none;
175 .sidebarblock .sidebar-title a:hover {
176 text-decoration: underline;
184 <a href=
"index.html" title=
"Ruby on Rails"><img src=
"images/rails_logo_remix.gif" alt=
"Rails" height=
"140" width=
"110" /></a>
187 <h1 id=
"site_title"><span>Ruby on Rails
</span></h1>
188 <h2 id=
"site_title_tagline">Sustainable productivity for web-application development
</h2>
191 <li class=
"first-child"><a href=
"http://www.rubyonrails.org/" title=
"Ruby on Rails" class=
"ruby_on_rails">Ruby on Rails
</a></li>
192 <li><a class=
"manuals" href=
"index.html" title=
"Manuals Index">Guides Index
</a></li>
202 <a href=
"#_locations_for_initialization_code">Locations for Initialization Code
</a>
205 <a href=
"#_using_a_preinitializer">Using a Preinitializer
</a>
208 <a href=
"#_configuring_rails_components">Configuring Rails Components
</a>
211 <li><a href=
"#_configuring_active_record">Configuring Active Record
</a></li>
213 <li><a href=
"#_configuring_action_controller">Configuring Action Controller
</a></li>
215 <li><a href=
"#_configuring_action_view">Configuring Action View
</a></li>
217 <li><a href=
"#_configuring_action_mailer">Configuring Action Mailer
</a></li>
219 <li><a href=
"#_configuring_active_resource">Configuring Active Resource
</a></li>
221 <li><a href=
"#_configuring_active_support">Configuring Active Support
</a></li>
226 <a href=
"#_using_initializers">Using Initializers
</a>
229 <a href=
"#_using_an_after_initializer">Using an After-Initializer
</a>
232 <a href=
"#_changelog">Changelog
</a>
238 <h1>Configuring Rails Applications
</h1>
240 <div class=
"sectionbody">
241 <div class=
"para"><p>This guide covers the configuration and initialization features available to Rails applications. By referring to this guide, you will be able to:
</p></div>
242 <div class=
"ilist"><ul>
245 Adjust the behavior of your Rails applications
250 Add additional code to be run at application start time
256 <h2 id=
"_locations_for_initialization_code">1. Locations for Initialization Code
</h2>
257 <div class=
"sectionbody">
258 <div class=
"para"><p>preinitializers
261 initializers (load_application_initializers)
262 after-initializer
</p></div>
264 <h2 id=
"_using_a_preinitializer">2. Using a Preinitializer
</h2>
265 <div class=
"sectionbody">
267 <h2 id=
"_configuring_rails_components">3. Configuring Rails Components
</h2>
268 <div class=
"sectionbody">
269 <h3 id=
"_configuring_active_record">3.1. Configuring Active Record
</h3>
270 <h3 id=
"_configuring_action_controller">3.2. Configuring Action Controller
</h3>
271 <h3 id=
"_configuring_action_view">3.3. Configuring Action View
</h3>
272 <h3 id=
"_configuring_action_mailer">3.4. Configuring Action Mailer
</h3>
273 <h3 id=
"_configuring_active_resource">3.5. Configuring Active Resource
</h3>
274 <h3 id=
"_configuring_active_support">3.6. Configuring Active Support
</h3>
276 <h2 id=
"_using_initializers">4. Using Initializers
</h2>
277 <div class=
"sectionbody">
278 <div class=
"literalblock">
279 <div class=
"content">
280 <pre><tt>organization, controlling load order
</tt></pre>
283 <h2 id=
"_using_an_after_initializer">5. Using an After-Initializer
</h2>
284 <div class=
"sectionbody">
286 <h2 id=
"_changelog">6. Changelog
</h2>
287 <div class=
"sectionbody">
288 <div class=
"para"><p><a href=
"http://rails.lighthouseapp.com/projects/16213-rails-guides/tickets/28">Lighthouse ticket
</a></p></div>
289 <div class=
"ilist"><ul>
292 November
5,
2008: Rough outline by
<a href=
"../authors.html#mgunderloy">Mike Gunderloy
</a>
296 <div class=
"para"><p>actionmailer/lib/action_mailer/base.rb
297 257: cattr_accessor :logger
298 267: cattr_accessor :smtp_settings
299 273: cattr_accessor :sendmail_settings
300 276: cattr_accessor :raise_delivery_errors
301 282: cattr_accessor :perform_deliveries
302 285: cattr_accessor :deliveries
303 288: cattr_accessor :default_charset
304 291: cattr_accessor :default_content_type
305 294: cattr_accessor :default_mime_version
306 297: cattr_accessor :default_implicit_parts_order
307 299: cattr_reader :protected_instance_variables
</p></div>
308 <div class=
"para"><p>actionmailer/Rakefile
309 36: rdoc.options
<< <em>—line-numbers
</em> << <em>—inline-source
</em> << <em>-A cattr_accessor=object
</em></p></div>
310 <div class=
"para"><p>actionpack/lib/action_controller/base.rb
311 263: cattr_reader :protected_instance_variables
312 273: cattr_accessor :asset_host
313 279: cattr_accessor :consider_all_requests_local
314 285: cattr_accessor :allow_concurrency
315 317: cattr_accessor :param_parsers
316 321: cattr_accessor :default_charset
317 325: cattr_accessor :logger
318 329: cattr_accessor :resource_action_separator
319 333: cattr_accessor :resources_path_names
320 337: cattr_accessor :request_forgery_protection_token
321 341: cattr_accessor :optimise_named_routes
322 351: cattr_accessor :use_accept_header
323 361: cattr_accessor :relative_url_root
</p></div>
324 <div class=
"para"><p>actionpack/lib/action_controller/caching/pages.rb
325 55: cattr_accessor :page_cache_directory
326 58: cattr_accessor :page_cache_extension
</p></div>
327 <div class=
"para"><p>actionpack/lib/action_controller/caching.rb
328 37: cattr_reader :cache_store
329 48: cattr_accessor :perform_caching
</p></div>
330 <div class=
"para"><p>actionpack/lib/action_controller/dispatcher.rb
331 98: cattr_accessor :error_file_path
</p></div>
332 <div class=
"para"><p>actionpack/lib/action_controller/mime_type.rb
333 24: cattr_reader :html_types, :unverifiable_types
</p></div>
334 <div class=
"para"><p>actionpack/lib/action_controller/rescue.rb
335 36: base.cattr_accessor :rescue_responses
336 40: base.cattr_accessor :rescue_templates
</p></div>
337 <div class=
"para"><p>actionpack/lib/action_controller/session/active_record_store.rb
338 60: cattr_accessor :data_column_name
339 170: cattr_accessor :connection
340 173: cattr_accessor :table_name
341 177: cattr_accessor :session_id_column
342 181: cattr_accessor :data_column
343 282: cattr_accessor :session_class
</p></div>
344 <div class=
"para"><p>actionpack/lib/action_controller/vendor/html-scanner/html/sanitizer.rb
345 44: cattr_accessor :included_tags, :instance_writer
⇒ false
</p></div>
346 <div class=
"para"><p>actionpack/lib/action_view/base.rb
347 189: cattr_accessor :debug_rjs
348 193: cattr_accessor :warn_cache_misses
</p></div>
349 <div class=
"para"><p>actionpack/lib/action_view/helpers/active_record_helper.rb
350 7: cattr_accessor :field_error_proc
</p></div>
351 <div class=
"para"><p>actionpack/lib/action_view/helpers/form_helper.rb
352 805: cattr_accessor :default_form_builder
</p></div>
353 <div class=
"para"><p>actionpack/lib/action_view/template_handlers/erb.rb
354 47: cattr_accessor :erb_trim_mode
</p></div>
355 <div class=
"para"><p>actionpack/test/active_record_unit.rb
356 5: cattr_accessor :able_to_connect
357 6: cattr_accessor :connected
</p></div>
358 <div class=
"para"><p>actionpack/test/controller/filters_test.rb
359 286: cattr_accessor :execution_log
</p></div>
360 <div class=
"para"><p>actionpack/test/template/form_options_helper_test.rb
361 3:TZInfo::Timezone.cattr_reader :loaded_zones
</p></div>
362 <div class=
"para"><p>activemodel/lib/active_model/errors.rb
363 28: cattr_accessor :default_error_messages
</p></div>
364 <div class=
"para"><p>activemodel/Rakefile
365 19: rdoc.options
<< <em>—line-numbers
</em> << <em>—inline-source
</em> << <em>-A cattr_accessor=object
</em></p></div>
366 <div class=
"para"><p>activerecord/lib/active_record/attribute_methods.rb
367 9: base.cattr_accessor :attribute_types_cached_by_default, :instance_writer
⇒ false
368 11: base.cattr_accessor :time_zone_aware_attributes, :instance_writer
⇒ false
</p></div>
369 <div class=
"para"><p>activerecord/lib/active_record/base.rb
370 394: cattr_accessor :logger, :instance_writer
⇒ false
371 443: cattr_accessor :configurations, :instance_writer
⇒ false
372 450: cattr_accessor :primary_key_prefix_type, :instance_writer
⇒ false
373 456: cattr_accessor :table_name_prefix, :instance_writer
⇒ false
374 461: cattr_accessor :table_name_suffix, :instance_writer
⇒ false
375 467: cattr_accessor :pluralize_table_names, :instance_writer
⇒ false
376 473: cattr_accessor :colorize_logging, :instance_writer
⇒ false
377 478: cattr_accessor :default_timezone, :instance_writer
⇒ false
378 487: cattr_accessor :schema_format , :instance_writer
⇒ false
379 491: cattr_accessor :timestamped_migrations , :instance_writer
⇒ false
</p></div>
380 <div class=
"para"><p>activerecord/lib/active_record/connection_adapters/abstract/connection_specification.rb
381 11: cattr_accessor :connection_handler, :instance_writer
⇒ false
</p></div>
382 <div class=
"para"><p>activerecord/lib/active_record/connection_adapters/mysql_adapter.rb
383 166: cattr_accessor :emulate_booleans
</p></div>
384 <div class=
"para"><p>activerecord/lib/active_record/fixtures.rb
385 498: cattr_accessor :all_loaded_fixtures
</p></div>
386 <div class=
"para"><p>activerecord/lib/active_record/locking/optimistic.rb
387 38: base.cattr_accessor :lock_optimistically, :instance_writer
⇒ false
</p></div>
388 <div class=
"para"><p>activerecord/lib/active_record/migration.rb
389 259: cattr_accessor :verbose
</p></div>
390 <div class=
"para"><p>activerecord/lib/active_record/schema_dumper.rb
391 13: cattr_accessor :ignore_tables
</p></div>
392 <div class=
"para"><p>activerecord/lib/active_record/serializers/json_serializer.rb
393 4: base.cattr_accessor :include_root_in_json, :instance_writer
⇒ false
</p></div>
394 <div class=
"para"><p>activerecord/Rakefile
395 142: rdoc.options
<< <em>—line-numbers
</em> << <em>—inline-source
</em> << <em>-A cattr_accessor=object
</em></p></div>
396 <div class=
"para"><p>activerecord/test/cases/lifecycle_test.rb
397 61: cattr_reader :last_inherited
</p></div>
398 <div class=
"para"><p>activerecord/test/cases/mixin_test.rb
399 9: cattr_accessor :forced_now_time
</p></div>
400 <div class=
"para"><p>activeresource/lib/active_resource/base.rb
401 206: cattr_accessor :logger
</p></div>
402 <div class=
"para"><p>activeresource/Rakefile
403 43: rdoc.options
<< <em>—line-numbers
</em> << <em>—inline-source
</em> << <em>-A cattr_accessor=object
</em></p></div>
404 <div class=
"para"><p>activesupport/lib/active_support/buffered_logger.rb
405 17: cattr_accessor :silencer
</p></div>
406 <div class=
"para"><p>activesupport/lib/active_support/cache.rb
407 81: cattr_accessor :logger
</p></div>
408 <div class=
"para"><p>activesupport/lib/active_support/core_ext/class/attribute_accessors.rb
409 5:# cattr_accessor :hair_colors
410 10: def cattr_reader(*syms)
411 29: def cattr_writer(*syms)
412 50: def cattr_accessor(*syms)
413 51: cattr_reader(*syms)
414 52: cattr_writer(*syms)
</p></div>
415 <div class=
"para"><p>activesupport/lib/active_support/core_ext/logger.rb
416 34: cattr_accessor :silencer
</p></div>
417 <div class=
"para"><p>activesupport/test/core_ext/class/attribute_accessor_test.rb
418 6: cattr_accessor :foo
419 7: cattr_accessor :bar, :instance_writer
⇒ false
</p></div>
420 <div class=
"para"><p>activesupport/test/core_ext/module/synchronization_test.rb
421 6: @target.cattr_accessor :mutex, :instance_writer
⇒ false
</p></div>
422 <div class=
"para"><p>railties/doc/guides/html/creating_plugins.html
423 786: cattr_accessor
<span
style=
"color: #990000">:
</span
>yaffle_text_field
<span
style=
"color: #990000">,
</span
> <span
style=
"color: #990000">:
</span
>yaffle_date_field
424 860: cattr_accessor
<span
style=
"color: #990000">:
</span
>yaffle_text_field
<span
style=
"color: #990000">,
</span
> <span
style=
"color: #990000">:
</span
>yaffle_date_field
</p></div>
425 <div class=
"para"><p>railties/lib/rails_generator/base.rb
426 93: cattr_accessor :logger
</p></div>
427 <div class=
"para"><p>railties/Rakefile
428 265: rdoc.options
<< <em>—line-numbers
</em> << <em>—inline-source
</em> << <em>—accessor
</em> << <em>cattr_accessor=object
</em></p></div>
429 <div class=
"para"><p>railties/test/rails_info_controller_test.rb
430 12: cattr_accessor :local_request
</p></div>
431 <div class=
"para"><p>Rakefile
432 32: rdoc.options
<< <em>-A cattr_accessor=object
</em></p></div>