Forum: Ruby on Rails How to know the current weekday?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
38319b077af105c44aa482d05d899846?d=identicon&s=25 jnxgn (Guest)
on 2009-06-05 09:17
(Received via mailing list)
I failed to find what is the weekday by following codes:

timetoday = Time.now

if timetoday =~ /Fri/
puts "Friday"
end

Please help to analysis what is the problem。
puts timetoday
It will display: Fri Jun **** 2009
but it is not true for: timetoday =~ /Fri/
81b61875e41eaa58887543635d556fca?d=identicon&s=25 Frederick Cheung (Guest)
on 2009-06-05 09:22
(Received via mailing list)
On Jun 5, 12:01 am, jnxgn <s...@jnxgn.cn> wrote:
> It will display: Fri Jun **** 2009
> but it is not true for: timetoday =~ /Fri/

Instances of Time do not implement a =~ which does that. When you run
Time.now at the console it gets converted to a string (and that string
has a =~ method which behaves as you expect). Converting your time to
a string would sort of work but you really shouldn't do that - just
examine the value of timetoday.wday

Fred
9b8d00f99fe595bdc45fd30439cf9c8f?d=identicon&s=25 Franz Strebel (Guest)
on 2009-06-05 09:28
(Received via mailing list)
From what Fred mentioned, you can also use timetoday.wday
to get the corresponding day name from the Date::DAYNAMES
Array constant.

Try this and see what you get:

puts Date::DAYNAMES[timetoday.wday]

Franz
9770ee3431156709c728f6105dd98f0d?d=identicon&s=25 Bosko Ivanisevic (Guest)
on 2009-06-05 10:54
(Received via mailing list)
Or if you want abbreviated version you can use

Date::ABBR_DAYNAMES[Time.now.wday]

Boko
This topic is locked and can not be replied to.