我在一个长期运行的 rake 任务中重构了一些代码。我曾经有这个代码:
if object = Object.find_by_name(name: "string")
else
object = Object.create(name: "string")
puts "#{object.name} created"
end
现在我有这个代码:
object = Object.where(name: "string").first_or_create
我认为这是一种改进。但是,我真的错过了长期运行的 rake 任务中的 puts 语句。使用 first_or_create 时,如何确定对象是“第一个”还是“已创建”?