# Problema routing

**URL:** <https://www.ruby-forum.com/t/problema-routing/195471>\
**Category:** IT\
**Created:** [September 23, 2010, 3:19pm UTC](https://www.ruby-forum.com/t/problema-routing/195471 "2010-09-23T15:19:07Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![marcop](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@marcop](https://www.ruby-forum.com/u/marcop)\
**Post date:** [September 23, 2010, 3:19pm UTC](https://www.ruby-forum.com/t/problema-routing/195471/1 "2010-09-23T15:19:07Z")

</div>

Salve a tutti,  
sono nuovo di Rails e sto cercando di convertirmi da altri linguaggi,  
purtroppo nonostante molto tempo speso a leggere tutorial, guide e post  
alcuni problemi non riesco a risolverli da solo.

Il routing Ã¨ uno di questi.

Ho creato una semplice struttura simil-twitter per fare esprienza, in  
cui ho quindi la gestione utenti (quindi come controllore users) e la  
gestione dei post (controllore posts).

Il mio file di route Ã¨ cosÃ¬ strutturato:

* * *

## resources :users do resources :posts, :only =\> [:create, :destroy] end

Quello che vorrei fare Ã¨ cercare di inserire un post dalla pagina  
personale di un utente.  
Ho quindi la mia pagina “users/show.html.erb” con questo codice:

* * *

\<%= form\_for @post, :url =\> user\_posts\_path,  
:html =\> { :id =\> “frmcontact” } do |f| %\>

 \<%= f.text\_area :content, :class =\> "textareatweet", :value =\> '' %\>  
 \<%= f.submit "Share", :class =\> "submitcomment" %\> 
\<% end %\> --------

Ma ho un errore su quel “user\_posts\_path” nonostante effettuando un rake  
route da console sia effettivamente esistente (errore: No route matches  
{:action=\>“create”, :controller=\>“posts”})

Sapete aiutarmi o rimandarmi a qualche guida? Grazie mille!

---

<div class="post-metadata">

**Author:** ![marcop](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@marcop](https://www.ruby-forum.com/u/marcop)\
**Post date:** [September 23, 2010, 3:21pm UTC](https://www.ruby-forum.com/t/problema-routing/195471/2 "2010-09-23T15:21:12Z")

</div>

Piccola aggiunta: ovviamente nel modello user.rb ho impostato “has\_many  
:posts”, mentre nel modello post.rb ho impostato “belongs\_to :user”.  
Non so se serva per il problema, ma lo scrivo ugualmente 😉

---

<div class="post-metadata">

**Author:** ![marcop](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@marcop](https://www.ruby-forum.com/u/marcop)\
**Post date:** [September 23, 2010, 4:06pm UTC](https://www.ruby-forum.com/t/problema-routing/195471/3 "2010-09-23T16:06:16Z")

</div>

Il 23/09/10 15.19, Marco P. ha scritto:

> Ma ho un errore su quel “user\_posts\_path” nonostante effettuando un rake  
> route da console sia effettivamente esistente (errore: No route matches  
> {:action=\>“create”, :controller=\>“posts”})

Premesso che anche io mi intorto parecchio con il routing di rails3,  
leggendo il paragrafo 2.7 da  
[Rails Routing from the Outside In — Ruby on Rails Guides](http://edgeguides.rubyonrails.org/routing.html) direi che devi usare:

form\_for @post, :url =\> user\_posts\_path(@user)

spero di non aver detto una bischerata 🙂

---

<div class="post-metadata">

**Author:** ![marcop](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/b9bd4f/32.png) [@marcop](https://www.ruby-forum.com/u/marcop)\
**Post date:** [September 23, 2010, 7:09pm UTC](https://www.ruby-forum.com/t/problema-routing/195471/4 "2010-09-23T19:09:44Z")

</div>

Tommaso V. wrote:

> Il 23/09/10 15.19, Marco P. ha scritto:
> 
> > Ma ho un errore su quel “user\_posts\_path” nonostante effettuando un rake  
> > route da console sia effettivamente esistente (errore: No route matches  
> > {:action=\>“create”, :controller=\>“posts”})
> 
> Premesso che anche io mi intorto parecchio con il routing di rails3,  
> leggendo il paragrafo 2.7 da  
> [Rails Routing from the Outside In — Ruby on Rails Guides](http://edgeguides.rubyonrails.org/routing.html) direi che devi usare:
> 
> form\_for @post, :url =\> user\_posts\_path(@user)
> 
> spero di non aver detto una bischerata 🙂

Alla grande! Funziona e non solo: mi hai aperto un mondo…  
Vedendo il tuo suggerimento ho capito che in realtÃ avevo grossi  
problemi con il routing, leggere tra parentesi il passaggio della  
variabile mi ha illuminato e ho risolto anche altri problemi ;).

Grazie, a buon rendere!
