有 2 组用户在 django 中查看 2 个不同的视图

Posted

技术标签:

【中文标题】有 2 组用户在 django 中查看 2 个不同的视图【英文标题】:having 2 groups of users to view 2 different views in django 【发布时间】:2011-08-20 16:41:24 【问题描述】:

我有一个 django 项目,它有两种类型的用户(在我的例子中是教师和学生)

我希望他们中的每一组在登录时查看不同的页面。 这怎么可能?

或者如何知道某个用户属于哪个组?

提前致谢

【问题讨论】:

【参考方案1】:

要获取用户组,请查看authentication 上的文档。

用户对象有两个多对多 字段:模型。用户。团体和 用户权限。用户对象可以 在 与任何其他 Django 模型相同:

myuser.groups = [group_list]

所以如果你想检查一个用户是否是组teachers的成员:

if myuser.groups.filter(name='teachers'):
    print "myuser is a teacher"
    ...

考虑到重定向,请参阅此答案:Django - after login, redirect user to his custom page --> mysite.com/username

【讨论】:

以上是关于有 2 组用户在 django 中查看 2 个不同的视图的主要内容,如果未能解决你的问题,请参考以下文章

Django 身份验证:员工索引和用户索引(2 个模板)

如何显示用户组,因为它们没有在 django 视图中显示?

Django中管理员和应用程序的不同会话

django实现不同用户查看不同菜单

Django为不同的组模板不同的项目。用户身份验证和组隔离

如何根据用户组更改 Django 模板?