是否可以使用类方法来定义CSS样式?

时间:2010-10-19 08:09:47

标签: ruby-on-rails ruby-on-rails-3

我正在尝试在我的网站中为特定的类方法构建颜色编码,这样如果某些值较低,则某些值会以不同的颜色显示。

我刚刚定义了一个类方法,它将存储在我的数据库中的数字转换为显示给我的用户的单词。

# 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;这样的东西吗?

1 个答案:

答案 0 :(得分:3)

我认为使用Rails没有任何花哨的方法。这是纯粹的表示逻辑,因此我在model_helper.rb中定义了一个帮助方法,将其包含在spanclass

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

为类low添加CSS以红色显示。