ActiveRecord中设置字段默认值的方法

想做一个Event的记录
先建立了一个scaffold
rails g scaffold Event name:string description:text status:string
之后
rake db:migrate
然后修改controllers/events_controller.rb
增加
validates :name,:status :presence => true
让name和status必输
然后想让status默认都是Y
这时候问题来了,刚才忘记在建migration里面把数据库里status的字段默认值设置成Y了
找到几个选择
1.新增一个migration或者db直接操作(不推荐),为status加上默认值
2.在model里after_initialize加一个方法
after_initialize :default_values
def default_values
self.status ||= 'Y'
end
3.这个比较无敌,有一个gem
https://github.com/FooBarWidget/default_value_for

最后选择了方法2~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值