0

フィールドのあるフォームがありdatetimeます。Rails 3.2.13 はtype="datetime-local" inputまだフィールドをサポートしていないため (また、4.0 ベータ版に移行する準備ができていません)、手動でこれを行っています。

<input type="datetime-local" name="person[my_date_time]"<% if @person.my_date_time %> value="<%=@person.my_date_time.strftime('%FT%T')%>"<% end %>/>

問題は、 @person.my_date_time がデータベースにある場合、現在の日付/時刻になることnilです。また、秒も出力するため、Chrome の日時の処理が台無しになります。nilデータベースにある場合は、そのフィールドを空にしたい。どうすればわかりますか?Railsのdatetime_selectメソッドは、私が望む方法でそれを処理します。

4

1 に答える 1

1

日時フィールドがnilデータベースにある場合、アプリケーションの何かがその値を変更または上書きしている必要があります。おそらくどこかにデフォルトがありますか?現在投稿されているものよりも多くのコードを見ずに、何が起こっているのかを言うことは実際には不可能です. Personモデルのコードとその他の関連コード (物事に影響を与える可能性のある宝石など)を投稿できますか?

strftime("%FT%R")  # Will output without seconds, e.g. "2013-04-18T21:43"

http://www.ruby-doc.org/core-1.9.3/Time.html#method-i-strftime

于 2013-04-18T14:36:44.767 に答える