2011-03-13 16 views
7

Tamam, bu işe almaya çalışırken fındık gidiyorum. Yeni eyleme ihtiyacım olan bilgiyi aktarmak istiyorum ve işe yaramıyor. Bir görünümde olduğum ve bir yol ile link_to kullanarak yeni bir kayıt oluşturmak için:Raylar 3 yeni yönteme parametre geçirerek

<%= link_to "New", new_libation_path(:xid=> 123) %> 

Benim yolları tablosu vardır: kaynaklarını: Buzlu

Ve benim yeni eylem var libation_controller içinde. ..

def new 
    puts params[:xid] #This is nil! 
    ... 

Neyi yanlış yapıyorum? Belki Bu hak görünüyor

cevap

19

.. raylar içinde params nasıl kullanılacağını google olmalıdır. URL'deki sorgu dizesi gerektiği gibi görünüyor mu? app.new_libation_path(:xid => 123) doğru URL'yi dönüyor senin raylar konsolda kontrol edin ve bu URL HTML işaretlemesindeki göründüğünü:

ruby-1.9.2-p136 :001 > app.new_user_path(:test => 'test') 
=> "https://stackoverflow.com/users/new?test=test" 

+1

Aaaargh (bir uygulamadan ben kullanışlı vardı)! Konsol kullanmanın ipucu için teşekkürler. Tabii ki çalıştı. Bu hızla ** yanlış ** (ama benzer) görünüm dosyasını değiştirmişti gerçeğine işaret etti! Şimdi gidip şaplaklar alacağım ... – rtfminc

+0

Haha, bu hepimizin başına geliyor! Yardım etmekten memnun oldum. Şimdi [kauçuk ördek satın gitmek] (http://compsci.ca/blog/rubber-ducks-help-best-with-computer-science/). –