【发布时间】:2020-01-29 08:58:43
【问题描述】:
我目前正在学习使用 Django 进行 Web 开发,我曾想过但似乎无法找到解决方案,即如何使 Web 应用程序的管理页面可供开发人员访问,但不能供应用程序用户访问虽然它托管在 Azure 或 AWS 之类的东西上。
这个想法是有一个管理页面,这样开发人员可以看到正在发生的事情并管理需要管理的内容,但不允许客户端访问管理界面的登录页面。
【问题讨论】:
-
您可以为管理类的特定用户添加验证
-
类似这样的东西 username = form.cleaned_data.get("username") password = form.cleaned_data.get("password") user = authenticate(username=username, password=password) if user. id == 22:登录(请求,用户)
-
@luiz 你可以为开发者设置
is_staff=True。 -
根据您要管理的内容,您还可以修改标准管理页面 - 如果您需要更多管理选项,您可以创建具有不同权限的自定义用户模型,然后使用 user.is_staff 或检查这些权限is_admin 或使用装饰器(我更喜欢该解决方案,因为它看起来更干净,并且像手动检查 is_staff - stackoverflow.com/questions/5833184/…)
标签: django