# Namespacing conventions

**URL:** <https://www.ruby-forum.com/t/namespacing-conventions/154046>\
**Category:** Rails\
**Created:** [November 24, 2008, 8:50pm UTC](https://www.ruby-forum.com/t/namespacing-conventions/154046 "2008-11-24T20:50:27Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![nickh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/7ea924/32.png) [@nickh](https://www.ruby-forum.com/u/nickh)\
**Post date:** [November 24, 2008, 8:50pm UTC](https://www.ruby-forum.com/t/namespacing-conventions/154046/1 "2008-11-24T20:50:27Z")

</div>

I compared the output from ``rake routes’’ for each solution below,  
and they both produce the exact same routes. Is one solution preferred  
over the over?

# Solution #1:

map.resource :account do |account|  
account.resources :properties, :controller =\> ‘account/properties’  
account.resources :photos, :controller =\> ‘account/photos’  
end

# Solution #2:

map.resource :account  
map.namespace :account do |account|  
account.resources :photos  
account.resources :properties  
end

Cheers,  
Nick

---

<div class="post-metadata">

**Author:** ![nickh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/7ea924/32.png) [@nickh](https://www.ruby-forum.com/u/nickh)\
**Post date:** [November 24, 2008, 9:54pm UTC](https://www.ruby-forum.com/t/namespacing-conventions/154046/2 "2008-11-24T21:54:57Z")

</div>

I guess you have the answer in your question… You don’t need the  
controller part so it would look like this:

map.resource :account do |account|  
account.resources :properties  
account.resources :photos  
end

---

<div class="post-metadata">

**Author:** ![nickh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/7ea924/32.png) [@nickh](https://www.ruby-forum.com/u/nickh)\
**Post date:** [November 25, 2008, 4:05am UTC](https://www.ruby-forum.com/t/namespacing-conventions/154046/3 "2008-11-25T04:05:21Z")

</div>

On Nov 24, 3:54 pm, Freddy A. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> I guess you have the answer in your question… You don’t need the  
> controller part so it would look like this:
> 
> map.resource :account do |account|  
> account.resources :properties  
> account.resources :photos  
> end

Hi Freddy. Leaving out the :controller part results in the properties  
and photos nested resources using their non-namespaced controllers:  
[http://rafb.net/p/lODGyE45.html](http://rafb.net/p/lODGyE45.html)
