Так как следующее слишком мало для комментария, я создам его как ответ. Я не буду утверждать, что это завершено. Надеюсь, это достаточно хорошо объясняет ситуацию.
Изначально minimongo
был разработан для отражения операций с коллекциями «как если бы они появлялись на стороне сервера». Meteor автоматически синхронизирует выполненную операцию с коллекцией на стороне сервера, что экономит много времени на разработку и разработку.
Разрешить / запретить были придуманы как дополнительный уровень контроля, поэтому клиенты смогут манипулировать только данными, включающими операции, определенные в разрешении / отказе.
Однако , обнаружена критическая уязвимость безопасности , поэтому сейчас это не рекомендуется, и вместо нее следует использовать методы на стороне сервера.
Вы можете попробовать это самостоятельно , создав коллекцию и установив для allow
значение true для insert, update, delete
, и просто выполните некоторые из этих операций на клиенте. Отличная функция, но, к сожалению, устарел (даже не уверен, что 100% работает в новых версиях).
Но это еще не все! Тем не менее, вы можете использовать minimongo
, когда дело доходит до операций запроса на клиенте с использованием курсоров . Очень мощные концепции включают cursor.observe и cursor.observeChanges . Вы также можете создавать сложные запросы, которые потребуют больших усилий при использовании традиционных итеративных подходов с массивами.
Наконец, minimogno
по-прежнему является местом назначения ваших синхронизированных документов (которые подписаны клиентами и опубликованы сервером). Он представляет собой проекцию данных, которые могут быть определены до самых точных в публикации .