2012-10-04 9 views
8

Ho un modulo, che quando POSTED esegue il rendering di un altro modulo. Quello che mi piacerebbe fare è passare i parametri dal primo modulo, in alcuni campi nascosti del secondo modulo.Metodo non definito 'unione' per '####': stringa <% = form_per%> helper

Il secondo modulo utilizza un form per l'helper di modulo e quello che sto cercando di fare è di farlo accettare i parametri che gli vengono inviati.

Ecco ciò che la forma assomiglia:

<%= form_for(@phone) do |f| %> 
     <%= f.hidden_field :original_number, params[:original_number] %> 


     <%= f.hidden_field :name, params[:name] %> 
     <%= f.hidden_field :twilio_number, number.phone_number %> 

     <div class="found_list"> 
      <div class="found_phone_number"> 
       <%= f.label :number, number.friendly_name) %> 
      </div> 
      <div class="choose_found_number"> 
      <%= f.submit "Choose This Number", :class => "btn btn-large btn-success" %> 
      </div> 
     </div> 
      <hr> 
    <% end %> 

Quando faccio qualcosa di simile

<%= f.hidden_field :original_number, params[:original_number] %> 

L'azione mi dà l'errore:

NoMethodError in Find_numbers#create 

Showing C:/Sites/dentist/app/views/phones/new.html.erb where line #17 raised: 

undefined method `merge' for "1231231234":String 

Il "1.231.231,234 mila" è il parametro che viene inviato POST al modulo, ma non sembra accettarlo.

Avete un'idea di come ottenere il modulo per accettare il parametro?

Quando ho rimosso i parametri [], l'errore non si verifica, ma i parametri non vengono compilati nei campi nascosti.

risposta

27

secondo parametro nella hidden_field dovrebbe essere un option hash, non un valore

<%= f.hidden_field :original_number, :value => params[:original_number] %> 
+0

Sì! Grazie mille per aver chiarito questo. –

Problemi correlati