2016-12-12 1 views
0

私はパースでパーミッションを行う方法を頭に入れようとしています。パーズ:パーミッションを適切に行う

私の場合は、以下の通りである。

  • 先生はもちろん
  • 教師が
  • ティーチは
  • コースの学生は、すべてにアクセスすることができるはずコースに学生を追加したいコースに講義を追加作成しますコースに属する講義以外何もなし

私は実際にどのように生徒のコースとそれに付随する講義..しかし、どのようにこれらの質問を制限することができますか? 参加していないコースの講義にユーザが問い合わせるのを防ぐにはどうすればよいですか?

ありがとうございます!

答えて

0

私はこれがパーミッションの問題ではないと思っていますが、ロジックとテーブルの構造はそれ以上です。学生がコースの特定の部分を編集するようにしたい場合には、パーミッションが使用されます。

コースと呼ばれるテーブルがあり、その後に学生関係テーブルがあります。 「登録プロセスで教師が追加した生徒関係と同じコースを選択する」

特定のコースに複数の生徒がいるかもしれないので、リレーションテーブルが必要です。でも、複数の特定のコースについての講義。

あなたが特定のコースのために複数の部品を追加したい場合は、この構造はまた、うまく動作します。例えば、モジュールまたは

  • モジュール1イントロ
  • モジュール2基本を講義
  • モジュール3評価

次に、学生ID = XXの特定のコースに属するすべてのモジュールを選択するクエリを作成できます。このタイプのロジックを使用すると、積極的に展開することができます。申し訳ありませんが私はこれで少し離れて実行している場合!これが理にかなっているかどうかを教えてください。

プラットフォームによっては、理解のために構文解析関係WIKIもあります。下記のJavascriptを参照してください。ただし、すべてのプラットフォーム上にドキュメントがあります。

https://parseplatform.github.io/docs/js/guide/#relational-data

+0

ありがとうございました! この場合、「権限」は正しい単語ではないと思います。私はこれを解決するためにどのように考え出したか説明します。 – hhorn

0

は、私はパースにこの方法を考え出したと信じています。

  • コース
  • 講演
  • ユーザー

教師がコースを作成するとき、あなたはそれにオブジェクトのACLを追加する必要があります:あなたは3つのクラスを持って説明したシナリオでは

。 コースオブジェクトがID「ABC123」を取得するとしましょう。その後、 "CourseTeachers_ABC123"と "CourseStudents_ABC123"という名前のロールを追加し、コースオブジェクトへのアクセスを許可します。教師はすべてを行うことができ、生徒は読めるだけでよいはずです。

講義を追加するときは、その講義に名前とコースへのポインタを付けます。 しかし、上記の役割も追加してください!これにより、コースID「ABC123」の教師と生徒のみがこれらの講義にアクセスできるようになります。

制御しないコースに講義を割り当てたり添付したりしないようにするには、おそらくクラウドコードが必要です。したがって、講義を保存してコースID "ABC123"に指定する場合、講義を保存しようとするユーザーが "CourseTeachers_ABC123"ロールを持っているかどうかを確認する必要があります。

関連する問題