由於Meteor Docs有'服務器端','客戶端'和'本地'集合。有沒有辦法在正在運行的應用程序中更改「狀態」(例如,如果它是服務器端,客戶端或本地)?在運行Meteor App時將MongoDB Collection從本地更改爲服務器端
使用案例:用戶可以註冊和登錄的Web應用程序。他們可以存儲合理的數據。根據用戶的個人偏好,他應該能夠選擇數據是存儲在本地還是服務器上(一般決定 - 不是從個案到個案)。
當前的方法:它的工作很好,如果我要麼實例化集合本地CollectionName = new Mongo.Collection(null);
或服務器端CollectionName = new Mongo.Collection('collectionName');
。 但我想不出一種方法來讓用戶可以改變收藏狀態。
有沒有辦法做到這一點? 或者是需要的解決方法(例如,創建兩者,一個本地和服務器端的Collaction,並且只是決定插入/更新/查找哪一個 - 這意味着很多重複的代碼?!)。
編輯:要明確認爲:我希望用戶能夠選擇,如果他的數據存儲這是與服務器同步或集合,沒有任何一個同步收藏。
請注意'allow/deny'規則不被官方[流星指南](https://guide.meteor.com/security.html#allow-deny)推薦。 – aedm
感謝您的關注!我個人從不使用'allow/deny'並總是使用Methods來實現收集數據的變化,但是並沒有意識到這是官方的指導。我會相應地更新我的答案以指出這一點。 – jordanwillis
我想你其實並沒有完全理解我的問題。但是,你的答案幫助我,因爲[本地收集持續流星包](https://github.com/jeffmitchel/meteor-local-persist)可能會幫助我做我想做的事。我試圖寫下我的問題來澄清思想。 – zwif