2010-07-11 8 views
12

Ben değerler geçirmek nasıl olduğunu geçen kısmi için/değişken: kısmi sonraraylar kısmi değerleri 3 İşte

<%= render "partials/banner", :locals => {:text_1 => t(:"main.home.banner_text_1"), 
              :text_2 => t(:"main.home.banner_text_2") } %> 

:

<%= text_1 %> <%= text_2 %> 

ama "tanımsız yerel değişken veya yöntemi alma text_1 "

Uygulamamdaki tüm görünümlerden ve düzenlerden erişilebilir olabilmesi için değişkeni nerede ayarlamalıyım?

Teşekkürler!

+0

üzerinden erişebilirsiniz Sadece koymak için cazip olacaktır <% = t ("main.home.banner_text_1")%> sağ kısmi içinde - yapabilirsiniz Bundan kurtulmak mı? Yoksa aslında değişken mi? – sarnold

cevap

28

sizin de bir application_helper yöntemi oluşturabilir tüm görüntülemelerdeki görüntülenecek olan bir şey, Örnek varsa: banner('Text', 'Content')

bu deneyin:

Ana sayfa:

<%= render :partial => 'layouts/test', 
      :locals => {:text_1 => t(:'text_1'), :text_2 => t(:'text_2')} 
%> 

Kısmi :

<%= text_1 %> <%= text_2 %> 
+4

teşekkürler ": partial =>" nihayet sorunu çözdü. Neden olmadan çalışmadığını merak ediyor musun? Neyse evet Bunu tüm görünümlerimde görüntülemem gerekiyor - banner ('metin', 'içerik') yardımcı yönteminin nasıl görünmesi gerektiği hakkında daha fazla bilgi verebilir misiniz? Şerefe – bogumbiker

12

ils 3 böyle bir şey için, kısmi değişkenleri nasıl geçtiğini değişti:

<%= render :partial => 'layouts/test', 
     :text_1 => t(:'text_1'), :text_2 => t(:'text_2') %> 

Raylar olduğunu ayrıştırmak ve yana olacaktır: (: toplama veya: benzeri gibi) metin_1 bilinen bir anahtar değil, kısmi geçirir kendisi.

Sen metin_1 veya metin_2