bekkou68
bekkou68

Reputation: 842

Rails 3 - Can I set start date to date_select method?

date_select method can only set :start_year, but i'd like to set start date (e.g. date 3 months ago) (but there are no such options).

so, can i set start date to date_select method? or, to make such the select box, should i use select_tag and options_for_select? or, are there any solutions?

thanks,

Upvotes: 5

Views: 3145

Answers (2)

Kevin Sylvestre
Kevin Sylvestre

Reputation: 38012

The date_select helper only supports setting a start_year and end_year (i.e. 2015-2020), not a start_date and end_date (i.e. June 1st, 2015 to July 1st, 2020). The date_select helper is design to be very simple. If you look closely, you will even notice every month has 31 days.

A few workarounds are available:

  1. Do validations on the server side and present errors if dates are submitted that are outside an acceptable range.
  2. Switch to using a JavaScript client - such as http://amsul.ca/pickadate.js/date/ - that allows limiting the start and end (should still use server side validations as well).

Upvotes: 5

Jay
Jay

Reputation: 6244

It is possible... e.g.

:start_year – Set the start year for the year select. Default is Time.now.year - 5

see this resource.

Upvotes: 8

Related Questions