# Validating a date is a Monday

**URL:** <https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213>\
**Category:** Rails\
**Created:** [April 10, 2009, 8:26am UTC](https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213 "2009-04-10T08:26:15Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![bingobob](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/e480ec/32.png) [@bingobob](https://www.ruby-forum.com/u/bingobob)\
**Post date:** [April 10, 2009, 8:26am UTC](https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213/1 "2009-04-10T08:26:15Z")

</div>

I’m trying to do this…

def validate

```
 errors.add_to_base "requested start date must be a monday" if

```

requested\_start\_date != Chronic.parse(‘monday’)

end

Not working though - this fails vaildation all the time (regardless of  
whether the date is a monday or not)

What am I missing here ?

thanks

bb

---

<div class="post-metadata">

**Author:** ![bingobob](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/e480ec/32.png) [@bingobob](https://www.ruby-forum.com/u/bingobob)\
**Post date:** [April 10, 2009, 9:31am UTC](https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213/2 "2009-04-10T09:31:54Z")

</div>

On Apr 10, 7:26 am, bingo bob [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> whether the date is a monday or not)

Chronic.parse(‘monday’) returns a particular monday (looks like next  
monday), what else could it do. As a result your code doesn’t check  
that the day of week is monday, it checks whether it is a particular  
monday at a particular time. You should look at the wday method on  
Time/Date, which returns the day of week.

Fred

---

<div class="post-metadata">

**Author:** ![bingobob](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/e480ec/32.png) [@bingobob](https://www.ruby-forum.com/u/bingobob)\
**Post date:** [April 10, 2009, 9:33am UTC](https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213/3 "2009-04-10T09:33:40Z")

</div>

I have Chronic in place - can it help me work out if the date is a  
Monday?

---

<div class="post-metadata">

**Author:** ![bingobob](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/b/e480ec/32.png) [@bingobob](https://www.ruby-forum.com/u/bingobob)\
**Post date:** [April 10, 2009, 9:40am UTC](https://www.ruby-forum.com/t/validating-a-date-is-a-monday/165213/4 "2009-04-10T09:40:33Z")

</div>

YOU GOT IT :-)… Thanks Fred (again)… easy, no need for chronic…

this seems to work

```
 errors.add_to_base "requested start date must be a monday" if 

```

requested\_start\_date.wday != 1

1 being Monday

bb.
