显示属性是否与今天的日期相同

时间:2010-02-01 13:14:34

标签: ruby-on-rails

所以我正在开发一个我希望在网站主页上显示视频的应用程序。视频模型具有actual_date和public_filename属性。现在,用户将实际日期设置为:模型中的日期。我想弄清楚如何最好地在主页上显示分配给今天日期的视频。我的主页视图是:

视频加载时请等待...

<script type='text/javascript'>
var s1 = new SWFObject('/flash/player.swf','player','500','372','9');
s1.addParam('allowfullscreen','true');
s1.addParam('allowscriptaccess','always');
s1.addParam('flashvars','file=<%= current_video.public_filename %>');
s1.write('preview');
</script>

我刚刚包含了current_video方法,因为我正在创建一个用正确的视频网址返回视图的方法。

所以我需要一种方法来查看数据库中的所有视频,看看是否有任何actual_date属性等于今天的日期,如果是,请告诉current_video它等于该视频。

感谢您提出任何意见或建议!

1 个答案:

答案 0 :(得分:0)

如果多个视频的actual_date等于今天的日期,则不指定会发生什么。但是,要检索一个视频,请执行以下操作:

@current_video = Video.first(:conditions => ['actual_date LIKE ?', Date.today])

- 或者你可以这样做:

@current_video = Video.last(:conditions => ['actual_date LIKE ?', Date.today])

您使用first还是last取决于您是否在Video模型上设置了某个辅助排序顺序。如果是我,我会为此创建一个命名范围:

class Video < ActiveRecord::Base
  named_scope :for_today, :conditions => { 'actual_date LIKE ?', Date.today }
end

- 然后你就可以了

@video = Video.for_today