2016-12-10 40 views
1

問:如何將日期時間拆分爲兩個單獨的表單域?將日期時間拆分爲兩個單獨的表單域(RAILS)

我有以下幾點:

<%= f.label :Borrowed, "Check Out Date*" %></td> 
<%= f.date_field :Borrowed, :id => "datepicker", min:Date.today, :ignore_time => true, :required => true %></td> 

<%= f.label :Borrowed, "Check Out Time*" %> 
<%= f.time_field :Borrowed, min:"9:00 AM", max: "4:30 PM", default:"10:00 AM", :ignore_date => true, :required => true%> 

<td><%= f.label :Returned, "Check In Date" %> 
<td><%= f.date_field :Returned, :id => "datepicker", min:Date.today, :ignore_time => true, :required => true %> 

<td><%= f.label :Returned, "Check In Time*" %> 
<td><%= f.time_field :Returned, min:"9:00 AM", max: "4:30 PM", default:"10:00 AM", :ignore_date => true, :required => true%> 

所以,我在我的數據庫中有兩個日期時間字段:借用並返回。我想分割日期和時間,以便用戶可以使用jQuery腳本從日曆中選擇日期。 (這可能是問題......)當我填寫並提交表單時,會發生什麼情況,但是在借用和退回時間的日期是相同的。

所以在數據庫中,它看起來是這樣的:

Returned: 2016-12-09 15:00:00 -0800 
Borrowed: 2016-12-09 10:00:00 -0800 

jQuery的

$('#datepicker').datepicker({format: 'dd/mm/yyyy'}); 

寶石

gem 'bootstrap-timepicker-rails' 
gem 'bootstrap-datepicker-rails' 

回答

3

不能有兩個字段與像同一個名字:

<%= f.date_field :Borrowed, :id => "datepicker", min:Date.today, :ignore_time => true, :required => true %></td> 
<%= f.time_field :Borrowed, min:"9:00 AM", max: "4:30 PM", default:"10:00 AM", :ignore_date => true, :required => true%> 

這樣做肯定會爲您提供一個字段的值,並且具有相同名稱的字段的值將被覆蓋。

你想做些什麼可以用以下兩種方式來完成:

1)在你的表列廷克

你可能在你的表中的兩列來存儲兩個值:日期,時間。 Rails提供了以下兩種數據類型來存儲日期和時間。

add_column :table_name, :borrowed_date, :date # It will store day, month & year. 
add_column :table_name, :borrowed_time, :time # It will store hours, minutes & seconds. 

2)使用date_field_tag & time_field_tag

而是依靠form_for產生對我們的價值觀,在這種情況下,你將不得不承擔責任。

<%= date_field_tag :borrowed_d # other options %> 
<%= time_field_tag :borrowed_t # other options %> 

現在,Rails會不會就列存在抱怨:borrowed_d & borrowed_t,並在同一,也不會保存值,這些列要麼。因此,在您的控制器中,現在您需要手動取borrowed_dborrowed_t的值,將它們合併爲一個,然後在數據庫中將該值保存爲borrowed

不僅如此,在編輯ActiveRecord對象的情況下,您將不得不從borrowed收集這兩個值,並在窗體中顯示它們。

+0

結束添加新列。效果很好。謝謝 – codingdraculasbrain

相關問題