Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 如何在rails视图中更改文本颜色_Ruby_Ruby On Rails 4_Ruby On Rails 5 - Fatal编程技术网

Ruby 如何在rails视图中更改文本颜色

Ruby 如何在rails视图中更改文本颜色,ruby,ruby-on-rails-4,ruby-on-rails-5,Ruby,Ruby On Rails 4,Ruby On Rails 5,如果状态为“待定”,则以蓝色显示“待定”。如果状态为“已接受”,则以绿色显示“已接受”。如果状态为“拒绝”,则显示红色 <% @applyleaves.each do |f| %> <%= if f.status == 0 "Pending" elsif f.status == 1 "Accepted" elsif f.status == 2 "R

如果状态为“待定”,则以蓝色显示“待定”。如果状态为“已接受”,则以绿色显示“已接受”。如果状态为“拒绝”,则显示红色

<% @applyleaves.each do |f| %>
<%= if f.status == 0
                 "Pending" 
       elsif f.status == 1
                 "Accepted"
       elsif f.status == 2
                 "Rejected"
       else
                 "Pending"
       end%>
</td>

如果您的状态列(属性)是整数,则可以使用枚举,这样您只有3个有效值:

# model
enum status: { pending: 0, accepted: 1, rejected: 2 }
每个键都给它们一个可读的值。因此,在您的视图中,您可以创建任何html标记,以便分配一个类,您以前使用所需的颜色文本定义了该类:

<span class="<%= "#{f.status.downcase}_status" %>">
  <%= f.status.capitalize %>
</span>

CSS仅限于此:

<style>
  .pending_status {
   color: blue;
  }
  .accepted_status {
   color: green;
  }
  .rejected_status {
   color: red;
  }
</style>

.待定状态{
颜色:蓝色;
}
.被接受的身份{
颜色:绿色;
}
.被拒绝的身份{
颜色:红色;
}
如果您的状态列(属性)是整数,则可以使用枚举,这样您只有3个有效值:

# model
enum status: { pending: 0, accepted: 1, rejected: 2 }
每个键都给它们一个可读的值。因此,在您的视图中,您可以创建任何html标记,以便分配一个类,您以前使用所需的颜色文本定义了该类:

<span class="<%= "#{f.status.downcase}_status" %>">
  <%= f.status.capitalize %>
</span>

CSS仅限于此:

<style>
  .pending_status {
   color: blue;
  }
  .accepted_status {
   color: green;
  }
  .rejected_status {
   color: red;
  }
</style>

.待定状态{
颜色:蓝色;
}
.被接受的身份{
颜色:绿色;
}
.被拒绝的身份{
颜色:红色;
}

Ok,我将枚举状态:{挂起:0,接受:1,拒绝:2}放在模型中的位置。在提供的答案下方添加您想要的任何注释。您的
erb标记
未正确关闭,您要求枚举状态具有字符串,但在代码中包含数字。确定,我将枚举状态:{挂起:0,接受:1,拒绝:2}放在模型中。在提供的答案下面添加任何您想做的评论。您的
erb标记
没有正确关闭,您在问题中要求枚举状态包含字符串,但在代码中包含数字。如何直接调用
enum
状态为
f.status。如果它包含哈希值,则大写?我的朋友,如果
f
是一个(名字不好)AR对象,其枚举状态可按其名称访问。无论属性是否由Rails表示为散列。如何直接调用
enum
status作为
f.status。如果它包含散列,则大写
?我的朋友,如果
f
是一个(命名不好的)AR对象,则其枚举状态可以按命名方式访问。不管属性是否由Rails表示为哈希。