2016-12-12 3 views
0

Я пытаюсь оборачивать голову, как делать разрешения в Parse.Анализ: Выполнение прав доступа

Мой случай следующее:

  • Учитель создает Конечно
  • Учитель добавляет лекции в курсе
  • Teach хочет добавить студента на курс, то
  • Курсы студенты должны быть в состоянии получить доступ ко всем лекции, относящиеся к курсу, и ничего больше

У меня есть идея о том, как получить студенческие курсы, а затем лекции, прилагаемые к нему. Но как я могу ограничить их запрос? Как я могу запретить пользователю запрашивать лекции для курса, который они не посещают и т. Д.?

Спасибо!

ответ

0

Я не думаю, что это вопрос разрешения, но больше логики и структуры таблицы. Разрешения будут использоваться, если вы хотите, чтобы учащийся редактировал определенные части курса и т. Д.

У вас есть таблица под названием «Курсы», а затем таблица отношений учеников. Тогда пусть ваш запрос будет «выбирать курсы, равные отношениям ученика, которые были добавлены преподавателем в процессе регистрации.

Вы видите, что у вас может быть несколько студентов для определенного курса, поэтому необходима таблица отношений. несколько лекций для конкретного курса.

Эта структура будет также хорошо работать, если вы хотите добавить несколько частей для конкретного курса. модули Eg или даже лекции

  • Модуль 1 Введение
  • Модуль 2 Basic
  • Оценка модуля 3

Тогда у вас может быть запрос, который отображает все модули, относящиеся к определенному курсу, где мой ученик ID = XX. Этот тип логики позволит вам активно развиваться. Извините, если я убегу с этим немного! Дайте мне знать, если это имеет смысл.

Также в зависимости от вашей платформы посмотрите на отношения разбора WIKI для некоторого понимания. Javascript ниже, но у них есть документы на всех платформах.

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

+0

Благодарим вас за ввод! Я думаю, что «разрешения» были неправильным словом для использования в этом случае. Я объясню, как я решил это исправить. – hhorn

0

Я полагаю, что я понял, как это проанализировать.

В описанном сценарии у вас есть 3 класса:

  • курс
  • Лекция
  • Пользователь

Когда учитель создает курс, вам нужно добавить объект ACL к нему. Итак, скажем, объект курса получает идентификатор «ABC123».Затем вы добавляете роль под названием «CourseTeachers_ABC123» и «CourseStudents_ABC123» и предоставляете им доступ к вашему объекту курса. Учителя должны иметь возможность делать все, и ученики должны только читать.

Когда вы добавляете лекцию, вы указываете ей имя и указатель на курс. Но вы также добавляете в него перечисленные роли! Таким образом, вы сможете разрешить учителям и студентам, конечно, ID «ABC123» получить доступ к этим лекциям.

Возможно, вам понадобится какой-то облачный код, чтобы убедиться, что люди не назначают и не прикрепляют лекции к курсам, которые они не контролируют. Поэтому, если вы хотите сохранить лекцию и указать ее на идентификатор курса «ABC123», вам нужно проверить, имеет ли пользователь, пытающийся сохранить лекцию, роль «CourseTeachers_ABC123» или нет.

 Смежные вопросы

  • Нет связанных вопросов^_^