他のユーザーが作成したデータにアクセスするユーザーについて質問があります。私は事例研究で以下で説明します。Realm Mobile Platformを使用してアプリユーザー間でデータを共有する
私はRealm Mobile Platformを使用しています。アプリはレルム認証を使用して、ユーザーが電子メール、Google、およびFacebookアカウントで登録できるようにします。この時点で私はREALM_URLとして使用しています:... ":9080 /〜/ name"。
以下の例で私が達成したいことを説明しようとします。 私がUserAとUserBを持っているイメージング。ユーザが(SyncUserを使用して)アプリに登録すると、プロジェクトアクティビティにリダイレクトされます。各ユーザーはそれぞれのプロジェクトを作成することができます。 Realm Mobile Platform(Realm Mobile Database)の前に、ユーザーデータがユーザーデバイスに格納されていました。現在、REALM_URLで「〜」を使用しているため、ユーザーがプロジェクトアクティビティに入力すると、アクティビティがリクエストし、そのユーザーのすべての既存プロジェクトを表示します。
このアプリには、ユーザーが公開プロジェクトを検索できる検索機能があります。たとえば、UserAはProject1を公開します。 UserBはProject1を見つけてそれに従うか、所有者に寄稿者になるよう依頼する必要があります。 UserBが寄稿者としてアクセスしたりアクセス権を取得したりすると、Project1はUserBのProjectアクティビティに表示されます。
これを可能にする方法が問題です。
オプションA:すべてのユーザーに固有の共通のレルムを使用します。 REALM_URLから "〜"を削除し、 "ownerID"のような異なるフィールドをプロジェクトRealmObjectに追加し、ユーザーRealmObjectの購読プロジェクトのリストを追加します。これにより、ユーザーは、プロジェクト活動内のすべてのプロジェクト(所有および購読)に対して検索を行い、検索アクティビティで公開プロジェクトを検索することができます。
オプションB:2つのレルムを使用します.1つはユーザーデータ用、もう1つはプロジェクト用です。 プライベートには「〜」を含むREALM_URLがあり、パブリックは絶対になります。その後、新しいユーザーがサインアップすると、アクセスコントロールを介してアプリケーションにアクセス権(mayRead、mayWrite、mayManage)が付与されます。
どれが良い選択肢ですか?他に良いオプションはありますか? ありがとう