backbone.js и рельсы - PullRequest
       20

backbone.js и рельсы

1 голос
/ 23 января 2012

У меня есть приложение rails, в котором у меня есть модель Контакта со встроенным адресным документом, поэтому у контакта может быть несколько адресов, сохраненных в одном документе.

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

Как это сделать?Должен ли я публиковать всю модель контакта, включая все адреса, каждый раз при изменении поля или добавлении / удалении адреса?

Или я должен как-то выполнять атомарные операции pop / push?

Кстати, я использую mongomapper.

Надеюсь, кто-нибудь сможет объяснить, как это работает?

спасибо, Рик

1 Ответ

4 голосов
/ 26 января 2012

Сначала взгляните на этот вопрос, в котором обсуждается полное обновление по сравнению с подходом инкрементного обновления:

Система голосования с Backbone.js

То есть дляпростой счетчик, поэтому оператор $ inc - это не то, что вы ищете, однако вы можете использовать другие атомарные операторы (например, $ set), для обновления на месте смотрите здесь:

http://www.mongodb.org/display/DOCS/Atomic+Operations

Последнее, о чем вы захотите подумать, это размер документа.Если вы разрешаете пользователю иметь бесконечное количество адресов, будьте готовы к попаданиям, если / когда документ превышает его первоначальный размер (плюс некоторые отступы).Это может означать больше операций ввода-вывода, обновления индексов и т. Д. Полное обсуждение выходит за рамки этого вопроса, но для начала ознакомьтесь с этой страницей:

http://www.mongodb.org/display/DOCS/Updating

Надеюсь, это поможет!

...