Pertanyaan Rails 3 - Dapatkah saya menetapkan tanggal mulai ke metode date_select?


metode date_select hanya dapat ditetapkan: start_year, tetapi saya ingin menetapkan tanggal mulai (mis. tanggal 3 bulan yang lalu) (tetapi tidak ada opsi seperti itu).

jadi, bisakah saya menetapkan tanggal mulai ke metode date_select? atau, untuk membuat kotak pilihan seperti itu, haruskah saya menggunakan select_tag dan options_for_select? atau, adakah solusi?

Terima kasih,


5
2017-11-10 03:19


asal


Jawaban:


Itu date_select pembantu hanya mendukung pengaturan start_year dan end_year (yaitu 2015-2020), bukan a start_date dan end_date (yaitu 1 Juni 2015 hingga 1 Juli 2020). Itu date_select helper dirancang sangat sederhana. Jika Anda melihat lebih dekat, Anda bahkan akan melihat setiap bulan memiliki 31 hari.

Beberapa solusi tersedia:

  1. Lakukan validasi pada sisi server dan sajikan kesalahan jika tanggal dikirim yang berada di luar rentang yang dapat diterima.
  2. Beralih ke menggunakan klien JavaScript - seperti http://amsul.ca/pickadate.js/date/ - yang memungkinkan membatasi awal dan akhir (harus tetap menggunakan validasi sisi server juga).

5
2017-11-10 04:07



Itu mungkin ... misalnya

: start_year - Tetapkan tahun awal untuk tahun yang dipilih. Default-nya adalah Time.now.year - 5

Lihat sumber daya ini.


8
2018-06-27 18:45