我正在部署一个简单的django项目,该项目将有一些细微之处。我将使用几个具有类似功能的应用程序,它们将是"文件夹"在同一域下,例如domain.com/app1
和domain.com/app2
。等
问题是,我希望app1和app2有不同的登录信息。 app1的登录用户可能是也可能不是app2的用户。
我想过几种方法:
login_required
user_passes_test
装饰器,以便只有app1
组的成员才能进入app1
编辑视图。)< / LI>
到目前为止,#2对我来说似乎最好,因为应用程序非常简单(每个应用程序可能只有一个模型)。
编辑:我想我可以使用user_passes_test
代替login_required
我错过了什么吗?有没有更好的办法? 谢谢你的帮助!
答案 0 :(得分:0)
所以,我的答案是令人敬畏的permission_required
装饰者。
这很好,因为超级用户拥有所有权限。
我的编辑功能如下所示:
@login_required()
@permission_required('app1.add_vorpalbunny', raise_exception=True)
def add_vorpal_bunny(request, *args, **kwargs):
#do view code ....