如何基于rails中的内容设置css类

如何基于rails中的内容设置css类,css,ruby-on-rails,sass,ruby-on-rails-4,Css,Ruby On Rails,Sass,Ruby On Rails 4,一般来说,我对Rails和web应用程序开发非常陌生,如果这是一个基本的东西 我的问题是我正在rails中寻找一种基于对象值设置CSS类的方法 在我的rails应用程序中使用bootstrap框架,我有一个表,其中显示了订单列表,每个订单都有一个状态,它可以处于各种状态,例如:“已创建、正在进行、异常” 根据顺序所处的状态,我想使用CSS标签,例如,不确定这是否是您要寻找的,但您可以这样做: content_tag(:td, '', :class => (@obj == 'x' ? 'so

一般来说,我对Rails和web应用程序开发非常陌生,如果这是一个基本的东西

我的问题是我正在rails中寻找一种基于对象值设置CSS类的方法

在我的rails应用程序中使用bootstrap框架,我有一个表,其中显示了订单列表,每个订单都有一个状态,它可以处于各种状态,例如:“已创建、正在进行、异常”


根据顺序所处的状态,我想使用CSS标签,例如
,不确定这是否是您要寻找的,但您可以这样做:

content_tag(:td, '', :class => (@obj == 'x' ? 'something' : 'somethingElse'))
如果您的条件测试很复杂,是的,我会使用助手方法。然后你可以做一些类似的事情:

content_tag(:td, '', :class => name_of_helper_method(@obj))
其中,helper方法返回要设置的类名的字符串

编辑:这可能是您正在寻找的内容:

<td><span class="label <%= order.state == 'Created' ? 'label-success' : 'label-warning' %>"></span></td>


我有点困惑,您并没有以一种清晰地描述您需要的方式展示您的信息。如果我没弄错的话,一个简单的
if/elsif
语句难道不能满足您的需要吗?您的第三个td元素缺少开头标记中的
。如果您试图使用
remote:true
?@gwho,我不太确定--我已经有一段时间没有使用
data remote
,我对所有的神奇选项都不熟悉。我想您可能需要一些JS(可能是切换类),它将挂接到
ajax:success
事件中。有关更多信息,请参见此处:。
<td><span class="label <%= order.state == 'Created' ? 'label-success' : 'label-warning' %>"></span></td>