У меня есть коллекция метеоров, и я хочу разрешить пользователю редактировать сразу несколько элементов и нажать кнопку «Сохранить», чтобы обновить их все.Duplicate _id in new_results
Это моя коллекция:
EmpresasUsuarias = new Mongo.Collection("empresasUsuarias");
И я делаю это на клиенте, чтобы иметь его в $ объеме:
$scope.empresasUsuarias = $meteor.collection(EmpresasUsuarias, false);
вещь: когда пользователь добавляет некоторые элементы и нажимает кнопку Сохранить, собираю (только) новые элементы в массиве и отправлять на сервер методом метеор. В сервере метод вставляет элементы в коллекцию (mongo). Все нормально, пока поток не вернется к клиенту. Там, коллекция получает «назад» все эти новые записи снова и они дублируют, и появляется ошибка в (клиент) консоли:
Duplicate _id in new_results
Whant Я думаю, что происходит является/механизм публикации подписки активируется, когда элементы вставлены и отправляются обратно клиенту; но они уже существуют, и Метеор думает, что они дублируются (т. е. Meteor не синхронизирует элементы, а дублирует их и заканчивает сообщение об ошибке).
Должен сказать, что я назначаю _id для каждой новой записи на клиенте, поэтому, когда они доходят до сервера, у уже есть есть _id.
Что я здесь делаю неправильно? Почему Метеор думает, что эти предметы разные, и говорит, что они дубликаты?
Заранее большое спасибо за помощь и до свидания ...
Я думаю, что лучше не назначать _id, но оставить их автогенерированными, чтобы предотвратить такие ошибки. – oshai
Я не назначаю _id для коллекции в клиенте сейчас ... такие же результаты. Я делаю что-то просто: 1) подписаться на очень маленькую коллекцию; 2) $ scope.MyCollection = $ meteor.collection (MyCollection, false); 3) $ scope.MyCollection.push ({name: 'мое имя "}) (несколько раз); 4) Сохранить с помощью метода meteor (на сервере): MyCollection.insert (item) (несколько раз, потому что у меня есть много элементов для вставки). 5) Список ($ scope) показывает повторяющиеся элементы (клиент). 6) Ошибка: Дублируйте _id в новых результатах. 7) Что я делаю неправильно? Большое спасибо ... –
можете ли вы опубликовать его в github, чтобы мы могли воспроизвести? – oshai