我建立一个Rake任务来收集有特色的Rake任务与零值找到属性
namespace :updates do
desc "Update from nil values"
task :companies => :environment do
nil_featured_companies = Company.where("featured = ?", nil)
nil_featured_companies.each do |co|
co.update_featured_to_false
end
...
一个零值,当我在铁轨控制台检查记录,我得不到任何回报。如果我修改查询搜索假值,我得到一个回
Company.where("featured = ?", false)
我想只有零的特色值的记录,并将其更新为false。用nil查找所有特色值的正确语法是什么?
我已经试过了,但是我得到一个,并且当我运行companies.ach {| c | c.update_attribute(:featured,false)}我得到这个错误ActiveRecord :: StatementInvalid:PG :: InFailedSqlTransaction:错误:当前事务中止,命令被忽略,直到事务处理结束 :SELECT“companies”。* FROM“companies” WHERE“公司”,“精选”IS NULL –