簡體   English   中英

使用rails 3.0.7和ruby 1.9.2進行日期轉換的問題

[英]issues with date conversion, using rails 3.0.7 and ruby 1.9.2

我正在使用datepicker在我的表單上插入日期,當然這會將日期作為字符串返回給控制器。 問題是當我嘗試將此字符串轉換為日期時,我收到錯誤“無效日期”

Date.parse(params[:abc][:date])

為了驗證我是否正確,我編寫了以下ruby程序:

string_date = "06/18/2011"
date = Date.parse(string_date)
puts date

這完全沒問題。 但是當我在rails控制器中嘗試相同的操作時,它會給出無效的日期錯誤。

請幫忙。

當我在我的Rails 3.1控制台中執行此操作時:

date = Date.parse("06/18/2011")

我收到“ArgumentError:無效日期”異常。 但是,它適用於ISO-8601日期

date = Date.parse('2011-06-18')

所以也許你有一個語言環境問題。 您的腳本可能正在使用您的標准區域設置(可能是某些美國區域設置,以日期格式判斷),但您的服務器可能正在使用其他內容。

嘗試通過添加以下內容將jQuery datepicker日期格式更改為標准且明確的:

dateFormat: 'yy-mm-dd'

到datepicker的選項。 datepicker的默認值是'mm/dd/yy' ,Ruby的Date類似乎不喜歡沒有特殊的語言環境設置。

暫無
暫無

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

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