Обновление документа mongodb без обновления встроенного документа и наоборот
У меня есть документ со встроенным документом.
У меня есть 2 формы, 1, которая обновляет поля в документе, и одна, которая обновляет поля в добавленных документах.
Они разбиты на 2 формы по множеству полей в каждом и т. Д., И на самом деле это просто пример структуры моего приложения.
Везде, где я ссылаюсь на эти данные, имеет смысл хранить их в одном документе, а не разбивать их.
Проблема в том, что когда я сохраняю скажем для 1, используя update_attributes, только поля из формы 1 сохраняются, то когда я перехожу к форме 2, сохраняются только поля из формы 2, и я теряю данные, сохраненные в форме 1.
Есть ли способ пропустить сохранение законченного документа с обратным вызовом, так что я могу сказать, например, если из формы 1? не обновлять встроенный док. А если из формы 2 просто сохранить встроенный документ?
Надеюсь, это имеет смысл.
Любая помощь или совет? Спасибо Рик
1 ответ
Не уверен, как он представлен в MongoMapper, но операция MongoDB, которую вы ищете, представляет собой обновление с $set, чтобы просто установить нужные поля. Поэтому, если вы перейдете к драйверу ruby, вам будет довольно легко установить только те поля, которые вам нужны.