在使用find_or_create_by_这个动态属性时,发现Rails API文档里有个错误. 文档里给出的例子如下:
能看出应该是查找name为Bob的记录,不存在就创建一个name为Bob, age为40的admin, 但我用类似的方法测试,发现不起做用, age会为nil, 将代码改为
之后就OK了
想必find_or_initialize_by_也是这样的用法
--
更新
这个Bug在新的版本里已经修复。
# Now 'Bob' exist and is an 'admin'
User.find_or_create_by_name('Bob', :age => 40) { |u| u.admin = true }
能看出应该是查找name为Bob的记录,不存在就创建一个name为Bob, age为40的admin, 但我用类似的方法测试,发现不起做用, age会为nil, 将代码改为
# Now 'Bob' exist and is an 'admin'
User.find_or_create_by_name(:name => 'Bob', :age => 40) { |u| u.admin = true }
之后就OK了
想必find_or_initialize_by_也是这样的用法
--
更新
这个Bug在新的版本里已经修复。