В Meteor у меня есть коллекция, на которую клиент подписывается. В некоторых случаях вместо публикации документов, которые существуют в коллекции на сервере, я хочу отправить некоторые фиктивные данные. Теперь это нормально, используя функцию this.added
в публикации.Обновить документ в Meteor mini-mongo без обновления серверных коллекций
Моя проблема в том, что я хочу рассматривать фиктивный документ так, как если бы это был реальный документ, особенно это становится проблематичным, когда я хочу его обновить. Для реальных документов я запускаю RealDocs.update
, но при выполнении этого действия в фиктивном документе он не работает, поскольку на сервере нет его представления (и я хотел бы сохранить его таким образом).
API-интерфейс коллекции, который позволил мне передать что-то вроде local = true
, было бы фантастическим, но я понятия не имею, как сложно это реализовать, и я не хочу изменять основной код.
В настоящее время я застрял в создании BogusDocs = new Meteor.Collection(null)
, но это затрудняет заполнение коллекции, поскольку я должен либо установить жесткий код в код клиента, либо использовать метод для получения данных с сервера, и мне нужно убедитесь, что я звоню BogusDocs.update
вместо RealDocs.update
, как только я имею дело с фиктивными данными.
Возможно, я мог бы вставить данные на сервер и убедиться, что он удален позже, но данные действительно не имеют ничего общего с коллекцией на стороне сервера, поэтому я бы предпочел избежать этого.
Любые мысли о том, как подойти к этой проблеме?
Я действительно [сообщил об этом как об ошибке] (https://github.com/meteor/meteor/issues/3271), но может быть (un) предназначенной функцией. –