From d64832c0406fcca5c8c8ac52adf3417eb0d27d46 Mon Sep 17 00:00:00 2001 From: Marcel Molina Date: Wed, 5 Dec 2007 14:28:05 +0000 Subject: Give examples for what tables should be called for models inside a module namespace. Closes #10288 [scott_willson] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8282 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activerecord/CHANGELOG | 2 ++ activerecord/lib/active_record/base.rb | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) (limited to 'activerecord') diff --git a/activerecord/CHANGELOG b/activerecord/CHANGELOG index e3b5d22721..8fa58b96cc 100644 --- a/activerecord/CHANGELOG +++ b/activerecord/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Give examples for what tables should be called for models inside a module namespace. Closes #10288 [scott_willson] + * Document the :message option for validates_associated. Closes #10357 [dylans] * Document automatically generated predicate methods for attributes. Closes #10373 [chuyeow] diff --git a/activerecord/lib/active_record/base.rb b/activerecord/lib/active_record/base.rb index 2d518a1ca1..28f60aa639 100755 --- a/activerecord/lib/active_record/base.rb +++ b/activerecord/lib/active_record/base.rb @@ -721,14 +721,23 @@ module ActiveRecord #:nodoc: # Guesses the table name (in forced lower-case) based on the name of the class in the inheritance hierarchy descending # directly from ActiveRecord. So if the hierarchy looks like: Reply < Message < ActiveRecord, then Message is used - # to guess the table name from even when called on Reply. The rules used to do the guess are handled by the Inflector class + # to guess the table name even when called on Reply. The rules used to do the guess are handled by the Inflector class # in Active Support, which knows almost all common English inflections. You can add new inflections in config/initializers/inflections.rb. # # Nested classes are given table names prefixed by the singular form of - # the parent's table name. Example: + # the parent's table name. Enclosing modules are not considered. Examples: + # + # class Invoice < ActiveRecord::Base; end; # file class table_name # invoice.rb Invoice invoices - # invoice/lineitem.rb Invoice::Lineitem invoice_lineitems + # + # class Invoice < ActiveRecord::Base; class Lineitem < ActiveRecord::Base; end; end; + # file class table_name + # invoice.rb Invoice::Lineitem invoice_lineitems + # + # module Invoice; class Lineitem < ActiveRecord::Base; end; end; + # file class table_name + # invoice/lineitem.rb Invoice::Lineitem lineitems # # Additionally, the class-level table_name_prefix is prepended and the # table_name_suffix is appended. So if you have "myapp_" as a prefix, -- cgit v1.2.3