Rails5中关于使用 enum 枚举的一个小坑
这里有个坑,enum 必须放在 validate 前面,不然会出现找不到 pay_types 的情况
class Order < ApplicationRecord
enum pay_type: {
"Check" => 0,
"Credit card" => 1,
"Purchase order" => 2
}
has_many :line_items, dependent: :destroy
validates :name, :address, :email, presence: true
validates :pay_type, inclusion: pay_types.keys #这里使用了pay_types
def add_line_items_from_cart(cart)
cart.line_items.each do |item|
item.cart_id = nil
line_items << item
end
end
end