我正在开发一个rails 2.3应用程序,以简化内部文书工作的创建等。我们有案例分配给特定的人,但有6个月的时间限制,案件必须解决或取消。
我有一个案例表(Rails模型称为Kases),如下所示:
<!-- START KASE SUB CONTENT -->
<div id="kase_subcontent">
<% unless Kase.most_recentfive.empty? %>
<div id="kasecounts">
<ul>
<li>Active Cases: <strong><%= @kases_active_count %></strong></li>
<li>On Hold: <strong><%= @kases_on_hold_count %></strong></li>
<li>Archived: <strong><%= @kases_archived_count %></strong></li>
<li>Invoice Sent: <strong><%= @kases_invoice_sent_count %></strong></li>
</ul>
</div>
<table class="index">
<tr>
<th>Job Ref.</th>
<th>Subject</th>
<th>Transport</th>
<th>Client</th>
<th>Client Ref.</th>
<th>Status</th>
</tr>
<% for kase in @kases %>
<tr class="<%= cycle("even", "odd") %> <%=h kase.kase_status %>" onclick="location.href='<%= kase_path(kase) %>'">
<td><%=h kase.jobno %></td>
<td><%=h kase.casesubject %></td>
<td><%=h kase.transport %></td>
<td><%=h kase.company.companyname %></td>
<td><%=h kase.clientref %></td>
<td><%=h kase.kase_status %></td>
<!--
<td><%= link_to "Jobsheet", kase_path(kase, :format => 'pdf'), :class => 'PDFLink' %></td>
<td><%= link_to 'Show', kase %></td>
<td><%= link_to 'Edit', edit_kase_path(kase) %></td>
<td><%= link_to 'Destroy', kase, :confirm => 'Are you sure?', :method => :delete, :class => 'important' %></td>
-->
</tr>
<% end %>
</table>
<% else %>
<img src="images/allcases-sample.jpg" />
<% end %>
当用户创建新案例时,请设置“指令”的日期(收到案例),如下所示:
<li>Date Instructed<span><%= f.date_select :dateinstructed, :order => [:day, :month, :year] %></span></li>
他们也可以在任何时候改变案件的“地位”,如下:
<li>Current Case Status<span><%= f.select "kase_status", ['Active', 'On Hold', 'Archived', 'Invoice Sent'] %></span></li>
我想要做的是突出显示当前处于活动状态且指令日期超过6个月之前的表行。
我为已归档的案例设置了基本样式(淡化了颜色)但我认为将行变为红色以用于任何变得紧急的事情会很有用。所以我可能会出现5个月以上的琥珀色,然后是6个月的红色。
额外的好处是以某种方式使行闪烁,这对用户来说是显而易见的。
知道怎么做吗?
更新
我已将以下内容添加到kase助手中:
def is_urgent
if (DateTime.now - 180) > @dateinstructed then
content_tag(:class => "urgentCase")
end
end
并使用以下内容从视图中调用它:
<%=h is_urgent %>
但是我收到以下错误:
nil的未定义方法`to_datetime':NilClass
答案 0 :(得分:0)
CSS类是以空格分隔的,因此您可以提供另一种方法来确定该项是“紧急”还是“关键”,并将该样式添加到表行。 然后,您需要做的就是添加一个新样式,该样式使用旧样式定义下的新类。
def is_urgent
(DateTime.now - 180) > @dateinstructed
end