Handling has_one recurso anidado en Rails 3

Tengo un modelo de usuario y un modelo Acerca de. El modelo about es una página donde los usuarios tienen más información sobre ellos que, debido a su naturaleza, es más apropiado tenerla en un modelo separado en lugar de en el modelo de usuario.

Quiero poder enrutarlo a algo como /: username / about y hacer que todos los verbos funcionen en esa ruta (GET POST, PUT, DELETE).

/:username/about
/:username/about/edit
/:username/about

Esto es lo que ya tengo

# routes.rb
resources :users do 
  resources :abouts
end

match ':username/about' => 'abouts#show', :as => :user_about
match ':username/about/add' => 'abouts#new', :as => :user_new_about    
match ':username/about/edit' => 'abouts#edit', :as => :user_edit_about

Y en los modelos que tengo

# about.rb
belongs_to :user

# user.rb
has_one :about

Cuando estoy haciendo una publicación o puesto / roses / about Está interpretándolo como un show

Started POST "/roses/about" for 127.0.0.1 at Sun Feb 27 16:24:18 -0200 2011
  Processing by AboutsController#show as HTML

Probablemente me estoy perdiendo la declaración en las rutas, pero ¿no es complicado declarar cada verbo para un recurso cuando es diferente del predeterminado?

¿Cuál es la forma más simple y limpia de archivar esto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta