Rails – 查找或创build – 有没有find或build立?
我目前正在使用:
XXX.find_or_create_by_uuid(XXXX)
有没有办法find或build立?
尝试XXX.find_or_initialize_by_uuid(XXXX)
由于Rails 4这是XXX.find_or_initialize_by(uuid: XXXX)
如果你想自己做(Rails 5):
class ApplicationRecord < ActiveRecord::Base def self.find_or_build_by hash result = all.where(hash) result.present? ? result : none.build(hash) end end