我正在使用partial for new和edit在rails中创建Edit表单 我正在使用日期选择器jquery,因此用户可以使用jquery-ui
选择日期我的问题是如何格式化所有日期字段 因为在编辑形式中它显示'YYYY-MM-DD' 我希望它显示'dd-mm-yyyy'
例如预订日期,它显示2014-04-20,我想要20-04-2014
我做了改变 配置/初始化/ date_formats.rb Date :: DATE_FORMATS [:default] =“%d-%m-%Y” 它仅在显示形式下工作,但不在编辑模式下工作
也在rails控制台(使用调试器)我检查日期格式是 'YYYY-MM-DD',有没有办法改变它
以下参考是我的show.html.erb和edit.html.erb(部分)
show.html.erb
<% if logged_in? %>
<p>Booking Date <br> <%= @booking.booking_date %> </p>
edit.html.erb
<%= form_for @booking do |f| %>
<%= render 'common/form_errors', object: @booking %>
<%= f.label :booking_date, "Booking Date" %><br>
<%= f.text_field :booking_date, :class => :datepicker, size: 10 %>
答案 0 :(得分:4)
如果表单是编辑,您可以手动添加日期值。
=@booking.booking_date.striftime("%d-%m-%YYYY")
20-04-2014
edit.html.erb
<%= form_for @booking do |f| %>
<%= render 'common/form_errors', object: @booking %>
<%= f.label :booking_date, "Booking Date" %><br>
<%= f.text_field :booking_date, :class => :datepicker, size: 10, :value=>"#{f.object.booking_date.striftime("%d-%m-%YYYY") unless f.object.new_record?}" %>