2013-07-02 2 views
5

Ho un modello Post con una relazione uno-a-molti con un modello Commenti. Sto utilizzando simple_form in un parziale di creare alcune forme veloci (in particolare, per il modello commenti) per la mia interfaccia utente:simple_form_for non riesce con "impossibile scrivere attributo sconosciuto` builder ""

<%= simple_form_for(@post, Comment.new) do |f| %> 
    <%= f.error_notification %> 

    <div class="form-inputs"> 
    <%= f.input :comment, :input_html => {:rows => 20, :class => 'span12'} %> 
    </div> 

    <div class="form-actions"> 
    <%= f.button :submit %> 
    </div> 
<% end %> 

Tuttavia, Rails non riesce con il seguente errore: can't write unknown attribute 'builder' e l'analisi dello stack che punta alla prima riga (<%= simple_form_for(@post, Comment.new) do |f| %>).

Da dove proviene questo attributo builder e come posso farlo funzionare? Grazie.

risposta

12

Immagino tu usi nested resources. In tal caso, è necessario passare un array al metodo simple_form_for come primo parametro (responsabile dell'impostazione dell'URL del modulo corretto):

<%= simple_form_for [@post, Comment.new] do |f| %> 
+0

Ha funzionato! Sapevo che doveva essere qualcosa di semplice che mi mancava. Grazie! –