簡體   English   中英

DateTime無法在Rails中將字符串轉換為日期

[英]DateTime not working to convert string to date in rails

我正在尋找一個由datetimepcker生成的參數轉換為“ 03/17/2019 8:30 AM”的參數。 表格中的所有其他參數都會保存,時間/日期除外。 我嘗試了多種方法,但都失敗了。

2.5.3 :010 > a
 => "03/17/2019 8:30 AM" 
2.5.3 :011 > DateTime.strptime(a, "%m/%d/%Y %I:%M:%S %P")
Traceback (most recent call last):
        2: from (irb):11
        1: from (irb):11:in `strptime'
ArgumentError (invalid date)

這應該是一個簡單的問題,但對我來說似乎並不可行。 有人知道如何將datetime參數保存在rails中嗎?

表單中的字段如下:

<div class="input-group date" id="datetimepicker4" data-target-input="nearest">
<%= f.text_field(:start, value: f.object.start ? f.object.start.strftime('%B %d, %Y') : nil, class: "form-control datetimepicker-input", data: {target:"#datetimepicker4"}, placeholder: "#{t :From}") %>
<div class="input-group-append" data-target="#datetimepicker4" data-toggle="datetimepicker">
<div class="input-group-text"><span class="fas fa-calendar-alt"></span></div>
</div>
</div>

謝謝

問題是您在strptime通話中要求輸入幾秒鍾,但是您的時間卻沒有幾秒鍾。 嘗試以下方法:

a = "03/17/2019 8:30 AM"
DateTime.strptime(a, "%m/%d/%Y %I:%M %P")

或增加時間。

格式字符串中包含:%S ,但是您嘗試解析的字符串中沒有秒。 刪除格式字符串的該部分,或者找到某種方式使日期字符串包含秒數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM