2010-10-19 100 views
0

我正在嘗試在我的站點中爲特定的類方法構建顏色編碼,以便某些值在低位顯示爲不同的顏色。是否可以使用類方法來定義CSS樣式?

我剛剛定義了一個類方法,將存儲在我的數據庫中的數字轉換爲顯示給我的用戶的單詞。

# model.rb 
def numbers_explained 
    numbers_explained = case number 
    when 0 then "Low" 
    when 1 then "OK" 
    when 2 then "OK" 
    when 3 then "High" 
    end 
end 

我想要做的另一件事總是顯示「低」紅色。

我們可以像使用數據那樣'範圍'CSS樣式嗎?我可以附上類似color:red !important;的東西嗎?

回答

3

我不認爲有任何幻想,簡單的方法來做到這一點與Rails。這是純粹的表現邏輯,所以我會在model_helper.rb定義一個輔助方法有class將其包裝在一個span

def numbers_explained(model) 
    content_tag_for(:span, model, :class => (model.number ? '' : 'low')) do 
    model.numbers_explained 
    end 
end 

並添加CSS爲low類以紅色顯示。

+0

聽Matt,這是輔助方法的用途。 – Faisal 2010-10-19 13:36:34

相關問題