使用simple_form在Rails中自定义日期时间字段

gko*_*lan 4 mysql forms datetime ruby-on-rails simple-form

我正在为我的应用程序使用Rails 3.2.14,MySQL和simple_form.

我已将notification_time列字段设置为,datetime并将其自定义为文本字段,如下所示_create_form.erb

<%= f.input :notification_time, :input_html => { :value => DateTime.now.strftime("%d/%m/%Y - %H:%M %p")}, :as => :string %>
Run Code Online (Sandbox Code Playgroud)

这导致08/10/2013 - 13:50 PM浏览器.

我有一个_update_form.erb公正的<%= f.input :notification_time, :as => :string %>,结果是2013-10-08 13:50:00 -0400

08/10/2013 - 13:50 PM当我更新表格时如何确保我能得到?

jam*_*mby 5

好吧,你永远不会设定它的外观.

在你的第一个代码块中,你正在做DateTime.now.strftime("%d/%m/%Y - %H:%M %p"),但你在第二个代码块中的任何地方都没有这样做.

我假设_update_form.erb您有一个与您正在更新的表单相对应的变量.

所以我们称之为@form.

然后你可以这样做:<%= f.input :notification_time, :value => @form.notification_time.strftime("%d/%m/%Y - %H:%M %p"), :as => :string %>......或类似的东西.