時,我得到以下異常頻繁,因爲在開始使用validates_timeliness寶石異常使用validates_timeliness寶石
Message undefined method `<' for nil:NilClass
Location /client_issue/create?client_id=15285
Action create
Controller client_issue
Query client_id=15285
Method POST
SSL true
如果他們使用正確的三個字母的月份,如果有人進入日期如9月28日2012年發生異常(即2012年9月28日)沒有問題。 事實上任何無效的月份名稱會導致bjhg 2012
例如28除繼承人的堆棧跟蹤的頂部
/shared/bundle/ruby/1.8/gems/timeliness-0.3.6/lib/timeliness/parser.rb:142:in `fast_date_valid_with_fallback'
/shared/bundle/ruby/1.8/gems/timeliness-0.3.6/lib/timeliness/parser.rb:24:in `make_time'
/shared/bundle/ruby/1.8/gems/timeliness-0.3.6/lib/timeliness/parser.rb:17:in `parse'
/shared/bundle/ruby/1.8/gems/validates_timeliness-3.0.14/lib/validates_timeliness/attribute_methods.rb:49:in `start_date='
/shared/bundle/ruby/1.8/gems/activerecord-3.2.8/lib/active_record/attribute_assignment.rb:85:in `send'
/shared/bundle/ruby/1.8/gems/activerecord-3.2.8/lib/active_record/attribute_assignment.rb:85:in `assign_attributes'
我的模型模型的相關位看起來是這樣的:
class ClientIssue < PauaServiceTable
validates_date :start_date ,:allow_blank => true
...
end
我對創業板初始值設定中有以下:
config.restriction_shorthand_symbols.update(
:now => lambda { Time.current },
:today => lambda { Date.current }
)
config.parser.remove_formats(:date, 'm/d/yy')
config.parser.remove_us_formats
config.parser.use_euro_formats
我不明白爲什麼我會收到異常。我應該能夠通過任何舊垃圾,只是得到一個無效的日期信息,而不是一個例外。 我有錯誤的設置了嗎?
該寶石現在已經更新,以修復bug – giorgio