2013-10-02 25 views
0

我搜索驗證用戶的出生日期的解決方案,例如,如果用戶試圖提交唯一的日和月,但他沒有選擇年份,日期將是無效是正確的,但不要軌道「T顯示任何異常或錯誤,如果一年沒有例如設置,但他跳日期,日期將不會被更新如何檢查日期使用時date_select

我發現有關問題的一些舊的答案,它似乎並不清楚我。 (請注意,我用date_select幫手在我看來)

我已經做了一個關於日期的驗證搜索,但我要找的是最新的一個有效的解決方案

我會感謝任何建議。謝謝

+0

什麼內置於Rails的'date_select'錯誤? –

+0

date_select沒有問題!爲什麼?我的問題是關於如何驗證日期! – medBo

+0

「驗證日期」是什麼意思?你想要做什麼樣的驗證? –

回答

0

DateTime.parse(..)將引發一個錯誤,如果日期是無效的:

[1] pry(main)> DateTime.parse("Feb 31, 2013") 
ArgumentError: invalid date 
from (pry):1:in `parse' 
[2] pry(main)> e = begin; DateTime.parse("Feb 31, 2013"); rescue => e; e; end 
=> #<ArgumentError: invalid date> 

所以剛纔捕獲錯誤檢查有效日期:

def valid_date?(string) 
    begin 
    DateTime.parse(string) 
    return true 
    rescue => e 
    return false 
    end 
end 
+0

這個解決方案是客戶端:/想象的JavaScript被停用,我需要更新我的回答軌 – medBo

+0

服務器驗證。 –

+0

它似乎軌走車的情況時,也就是2月31日和2月31日更新此以3月2日...還是情況下,當用戶選擇剛日和月(而不是年) – medBo

相關問題