11
我在ERB模板的局部變量:適當的地方來定義我的erb模板使用的變量+ HTML樣式的佈局?
<% thumbnail_width = 50 %>
我使用這個上漿一些縮略圖。
但是現在我意識到需要一些模板來訪問這個變量。
我應該在哪裏移動它,以及它應該是什麼類型的變量?
我在ERB模板的局部變量:適當的地方來定義我的erb模板使用的變量+ HTML樣式的佈局?
<% thumbnail_width = 50 %>
我使用這個上漿一些縮略圖。
但是現在我意識到需要一些模板來訪問這個變量。
我應該在哪裏移動它,以及它應該是什麼類型的變量?
根據此變量與Rails環境的交互方式,有幾種解決方案。
配置
您可以使用一個全局配置文件(例如,見SimpleConfig plugin)。當變量可能會根據環境而變化時,這是首選。
常量
您可以定義一個常數如果變量應該在許多不同的地方和環境進行訪問。例如,您可能想要創建文件
config/initializers/defaults.rb
並在其中寫入所有默認配置和常量。這裏定義的一個常量將在您的Rails應用程序中自動提供。
助手
如果變量是聯繫在一起的應用程序的特定部分,例如一個視圖,你可能要採取的Rails的helper優勢。 在特定情況下,你可以在你application_helper.rb創建圖像的輔助
module ApplicationHelper
THUMBNAIL_WIDTH = 50
def thumbnail_tag(source, options = {})
image_tag(source, options.reverse_merge(:width => THUMBNAIL_WIDTH))
end
end
然後使用助手,當你需要創建一個縮略圖,而不是在每一個文件中一遍又一遍地複製同樣的邏輯。
我第二個「幫手」的答案。 – 2009-07-08 15:53:34