Rails does not control the namespace. User is defined when user.rb is evaluated. Autoloading finds user.rb if the User constant is unknown, and admin/user.rb if Admin::User is unknown, but namespace usage is up to the application.
In my view, namespacing is something code meant to be shared should do, like a gem. Code not mean to be shared does not need it generally speaking in my opinion. In the rare event of a constant clash because a gem does not use a namespace then you can workaround that particular situation, but I personally wouldn't recommend apps to be namespaced as a standard practice. -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-core+unsubscr...@googlegroups.com. To post to this group, send email to rubyonrails-core@googlegroups.com. Visit this group at http://groups.google.com/group/rubyonrails-core. For more options, visit https://groups.google.com/d/optout.