2010-01-25 13 views

cevap

9

bunu yapmak için "en temiz" yolu olmasa gerek, fakat onları ayar seçenekleri çalışması gerektiği gibi:
->http://www.sinatrarb.com/configuration.html :)

ayarı:

set :foo, 'bar' 

alma:

"foo is set to " + options.foo 
+4

sonra sunucuyu yeniden unutmayın Bir uyarı atmak: Sinatra :: Base # seçenekleri kullanımdan kaldırıldı ve kaldırılacak, yerine #settings kullanın. ' Bunun yerine 'settings' kullanın. – briangonzalez

9

Onları sabit hale getirin. Olmalı, değil mi? Değişmeyecekler.

Tüm kapaklarda yazarak bir sabit yapın. Başka sorunlarla varsa

Yakut Değişken Kapsamları üzerinde bu makaleyi okuyun. http://www.techotopia.com/index.php/Ruby_Variable_Scope

Başka bir temiz seçenek, init yönteminin YAML'yi yüklediği ve sonra da değişkenleri ayarladığı bir yapılandırma sınıfı olabilir.

İyi eğlenceler. Yeni blogunuzu bitirdiğinizde bana cevap verin (sanırım bunun ne anlama geldiğini tahmin ediyorum). Sinatra README kaynaktan

5

: Templates

Şablonları


erişme değişkenler yol işleyicileri aynı kapsamında değerlendirilmiştir. Rota işleyicileri ayarlanan örnek değişkenleri şablonlar tarafından direcly erişilebilir:

get '/:id' do 
    @foo = Foo.find(params[:id]) 
    haml '%h1= @foo.name' 
end 

Veya, yerel değişkenlerin açık bir Hash belirtin:

diğer şablonlardan içinden partials olarak şablonları oluşturulurken Bu genellikle kullanılan
get '/:id' do 
    foo = Foo.find(params[:id]) 
    haml '%h1= foo.name', :locals => { :foo => foo } 
end 

.


Üçüncü bir seçenek, yardımcı yöntemler olarak bunlara erişim sağlamaktır. (Hangi ayrıca uygulama ve görünüşler boyunca kullanılabilir.)

1

da işe yaradığını:

@@foo = "bar" 

Ama `options` olacak kullanmak, bu değişikliğin