2010-09-04 33 views
0

我目前有一个模型,用户可以上传缩略图到记录中,然后显示在节目查看页面上。这个缩略图最初是为了让用户在查找记录的索引视图表时查找案例。如果案例引用是M10-XXX,Rails会显示X图片?

已变得显然的是用户只使用该功能来上传年的缩略图 - 例如,他们已经在对于每种情况用M10-XXX的参考数上传红色方块10。

所以我想知道是否可以添加一个帮手到kase模型来输出图像,如果kase参考以M10开头。然后,我可以在2011年,2012年等相同的帮助者包含图像。

在加濑秀视图调用上传缩略图的时刻:

<% if @kase.avatar.exists? then %> 
      <%= image_tag @kase.avatar.url %> 
     <% else %> 
      <img src="../images/document.jpg" alt="Document" /> 
     <% end %> 

我想这样做,是增加一个助手,例如:

def kase_thumb k 
    if k.jobno.to_date == Date.today then 
    <img src="images/10.png" alt="2010" /> 
    else 
    <img src="images/no-year-found.png" alt="2010" /> 
    end 
end 

显然,上述不会因为标准jobno将会是M-XXX,其中被当前年份的最后两位数字取代。

是可以有一个帮手的方法,提取前两个数字,但忽略第一个字母?

我确实想过在创建日期时这样做,但人们可能会追溯性地向应用程序添加案例。

感谢,

丹尼

回答

1

鉴于案件编号/标识符的字符串:

number = the_case_id[1,2].to_i 

希望这有助于。

+0

所以像这样:'if number = k.jobno [2,3] .to_i == Date.today then'? – dannymcc 2010-09-04 17:54:55

+0

号码,在这种情况下将包含数字'10'或任何2位数字。 – thomasfedb 2010-09-04 18:30:05

+0

这可以在视图中的'if'语句中完成吗? – dannymcc 2010-09-04 19:27:04