当我第一次在我的Orders控制器中调用一个动作时,我得到以下结果:
uninitialized constant Order::PAYMENT_TYPES
在刷新后我得到undefined method 'key?' for nil:NilClass
。
这表示我的模型代码中存在错误。我能够将其追踪到以下几行:
validates :pay_type, inclusion: PAYMENT_TYPES
PAYMENT_TYPES = [ "Check", "Credit Card", "Purchase Order"]
我的验证线出了什么问题?
我也尝试过使用validates :pay_type, inclusion: {in: PAYMENT_TYPES}
,但是没有用。
答案 0 :(得分:4)
这是因为您在班级中使用PAYMENT_TYPES常量后定义它。颠倒顺序,应该没问题。