Как исправить записи, когда модели были обновлены с помощью mongodb - PullRequest
0 голосов
/ 01 февраля 2011

У меня есть проект rails, который использует mongodb, у меня возникает проблема, когда у меня есть записи (документы), сделанные из предыдущей модели.(Я получаю ошибки класса, только для старых записей)

Есть ли быстрый способ исправить эти документы mongodb рельсовым способом, используя некоторую команду.

Или есть команда i?можно запустить mongoid, чтобы открыть конкретную модель в mongo, затем я могу ткнуть в документ вручную (удаляя ненужные ассоциации).

1 Ответ

0 голосов
/ 01 февраля 2011

Понятие миграции схемы должно существовать в mongoid, и я не думаю, что оно существует. Если вы внесли простые изменения, такие как переименование или удаление полей, вы можете легко сделать это с помощью оператора update, но для чего-то более сложного вам потребуется написать код.

Код, который вам нужно будет написать, скорее всего, понадобится перейти на уровень драйвера, чтобы изменить объекты, поскольку слой отображения больше не совместим.

Как правило, вы должны быть осторожны при изменении схемы в ваших объектах, поскольку сервер не имеет этой концепции и не может применять ее. В конечном итоге все зависит от вашего кода или используемой вами среды для обеспечения совместимости.

Как правило, это проблема, когда вы отображаете систему без выполнения пакетных обновлений, чтобы сохранить вещи в одной и той же схеме, с точки зрения уровня отображения.

...