Gen*_*l_9 26 ruby ruby-on-rails ruby-on-rails-3
我的rails应用程序中有一个DailyQuote模型,它有一个股票的日期和价格.已为此模型捕获数据库中的数据,包括周末.周末价格值已设为0.
我想把周六和周日的所有周末价格改为星期五的价格.在Ruby中执行此操作的最佳方法是什么?要确定某个日期是星期六还是星期日,并将其价值更改为该周末的星期五?
小智 49
TFM显示了识别星期几的有趣方法:
t = Time.now
t.saturday? #=> returns a boolean value
t.sunday? #=> returns a boolean value
Run Code Online (Sandbox Code Playgroud)
rob*_*tus 18
require 'date'
today = Date.today
ask_price_for = (today.wday == 6) ? today - 1 : (today.wday == 0) ? today - 2 : today
Run Code Online (Sandbox Code Playgroud)
要么
require 'date'
today = Date.today
ask_price_for = (today.saturday?) ? today - 1 : (today.sunday?) ? today - 2 : today
Run Code Online (Sandbox Code Playgroud)
ask_price_for 现在有一个您想要询问价格的日期.
获取与您的日期对应的实际价格取决于您的模型和您的ORM库(即ActiveRecord).
hea*_*iti 17
today = Date.today
if today.saturday? || today.sunday?
puts "Today is a weekend!"
end
Run Code Online (Sandbox Code Playgroud)
您也可以在一周中的任何其他日子执行此操作.Ruby非常棒,并且提供了许多很酷的方法.我建议你在难过的时候通过运行来看看课程的可用性.methods.所以,如果你跑步,Date.today.methods你会看到这些可用.
pet*_*ter 14
class Time
def is_weekend?
[0, 6, 7].include?(wday)
end
end
time = Time.new
puts "Current Time : " + time.inspect
puts time.is_weekend?
Run Code Online (Sandbox Code Playgroud)