Mongoid find_and_modify устарела

В настоящее время я обновляю приложение Rails до Mongoid 5. У меня возникли проблемы с обновлением некоторого кода, который использует устаревший метод (find_and_modify). Любая помощь будет оценена.

В Mongoid 4 у меня есть этот метод для поиска и применения:

LineItem.where({
  date: Date.today,
  location: "Location",
  department: "Department"
}).find_and_modify({
  "$set" => {
    hours: 8,
    updated_at: Time.current
  },
  "$setOnInsert" => {
    account_id: ObjectId("5739f4534f4e48b2aa00091c"),
    date: Date.today,
    location: "Location",
    department: "Department",
    created_at: Time.current
  }
}, upsert: true)

Каков эквивалент использования Mongoid 5?

Благодарю.

1 ответ

Из этого журнала изменений:

find_and_modify был удален и заменен на 3 варианта: find_one_and_update,find_one_and_delete а также find_one_and_replace,

Другие вопросы по тегам