如何为Django模型和视图设置访问控制或特权?

时间:2018-12-12 11:45:04

标签: python django python-3.x django-models django-views

我为网站/前端创建模型。我有3种类型的用户。我只想看到一种前端模型。如何为Django前端创建动态访问控制。请提供解决方案或建议插件。感谢您提前提出解决方案。

1 个答案:

答案 0 :(得分:0)

您可以在模板或视图侧执行此操作。

假设您的首选用户类型是“学生”,请执行以下操作:

模板

{% if user.is_authenticated and user.is_student %}
*content*
{% endif %}

或者这个:

观看次数

假设您要将博客文章的详细信息限制为仅学生,则需要在定义“ post_detail_view”视图函数之后立即创建条件。

def post_detail_view(request):
    if not request.user.is_student:
        **do something (eg. raise 404 or httpresponse or redirect)**
    **code for this view goes here**

在视图中声明限制不仅可以限制内容,还可以做更多的事情。您可以引发404错误,重定向未经授权的用户等等。模板解决方案仅允许您限制内容。

我希望这可以解决您的问题。