ruby-on-rails – Ruby:如何存储和显示星期几?
发布时间:2020-12-16 20:18:34 所属栏目:百科 来源:网络整理
导读:我比较新的 Ruby.我需要跟踪我的活动模式的一周中的某一天.我迄今为止的代码似乎不是最优雅的解决方案.我想知道是否有更好的方法. 到目前为止,这是我的形式: %= form_for(@activity) do |f| % div class="field" %= f.label :day %br / %= f.select :day,[[
我比较新的
Ruby.我需要跟踪我的活动模式的一周中的某一天.我迄今为止的代码似乎不是最优雅的解决方案.我想知道是否有更好的方法.
到目前为止,这是我的形式: <%= form_for(@activity) do |f| %> <div class="field"> <%= f.label :day %><br /> <%= f.select :day,[['Sunday',0],['Monday',1],['Tuesday',2],['Wednesday',3],['Thursday',4],['Friday',5],['Saturday',6]] %> </div> <% end %> 当我需要显示星期几: <% days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'] %> <% @activities.each do |activity| %> <%= days[activity.day.to_i] %> <% end %> 我该怎么做得更好?随意提到我可能不知道的任何图书馆/宝石. 解: Ruby提供了 <%= form_for(@activity) do |f| %> <div class="field"> <%= f.label :day %><br /> <%= f.select :day,Date::DAYNAMES.zip((0..6).to_a) %> </div> <% end %> <% @activities.each do |activity| %> <%= Date::DAYNAMES[activity.day.to_i] %> <% end %> 解决方法
Ruby的
Date 类已经有一个常量定义,它保存数组中的日期名称:Date :: DAYNAMES.
例如,您可以执行以下操作: days = [] Date::DAYNAMES.each_with_index { |x,i| days << [x,i] } 我不知道我是否会说这更好,但你可以肯定地利用你已经可以使用的东西. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |