我试图围绕如何在Parse中执行权限。
我的情况如下:
我知道如何真正获得学生的课程,然后附上课程......但我怎么能限制查询这些? 如何阻止用户查询他们未参加的课程?
谢谢!
答案 0 :(得分:0)
我认为这不是一个权限问题,而是更多的逻辑和表格结构。如果您希望学生编辑课程的特定部分等,则会使用权限。
有一个名为Courses的表,然后是一个学生关系表。然后让您的查询“选择与教师在注册过程中添加的学生关系相等的课程。
您看到某个特定课程可能有多名学生。因此需要一个关系表。与为特定课程进行多次讲座相同。
如果您想为特定课程添加多个部分,此结构也可以正常工作。例如模块甚至讲座
然后你可以有一个查询,选择属于我的学生ID = XX的特定课程的所有模块。这种类型的逻辑将允许您积极扩展。对不起,如果我有点逃跑了!如果这是有道理的,请告诉我。
另外,根据您的平台,请查看WIKI的解析关系以获得一些了解。下面是Javascript,但他们在所有平台上都有文档。
https://parseplatform.github.io/docs/js/guide/#relational-data
答案 1 :(得分:0)
我相信我在Parse中想到了这个。
在描述的场景中,您有3个类:
当教师创建课程时,您需要为其添加对象ACL。 所以让我们说一个课程对象得到ID“ABC123”。然后添加名为“CourseTeachers_ABC123”和“CourseStudents_ABC123”的角色,并授予他们访问课程对象的权限。教师应该能够做所有事情,学生应该只能阅读。
当你添加一个讲座时,你给它一个名字和一个指向课程的指针。 但是你也可以添加上面的角色!这样,您只允许课程ID“ABC123”的老师和学生访问这些课程。
您可能需要一些云代码来确保人们不会将讲座分配/附加到他们无法控制的课程中。因此,如果您想保存讲座并将其指向课程ID“ABC123”,您需要检查试图保存讲座的用户是否具有“CourseTeachers_ABC123”角色。