Недостаточно подробностей, чтобы сказать это с уверенностью, хотя, возможно, это относится к find_or_create_by
.
Если это подходит, вы бы просто сделали:
something = YourModel.find_or_create_by(id: id)
Вы также можете предоставить для этого блок, который передается методу create, если запись не найдена. Например:
something = YourModel.find_or_create_by(id: id) do |instance|
# this block only gets executed on create
instance.some_new_attribute = 'goes here'
end
Надеюсь, это полезно - дайте мне знать, подходит ли оно для вашего варианта использования.