Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何为Django模型和视图设置访问控制或权限?_Python_Django_Python 3.x_Django Models_Django Views - Fatal编程技术网

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

Python 如何为Django模型和视图设置访问控制或权限?,python,django,python-3.x,django-models,django-views,Python,Django,Python 3.x,Django Models,Django Views,我为网站/前端创建了一个模型。我有3种类型的用户。只有1种类型我想看到前端模型。如何为django前端创建动态访问控制。请给出一些解决方案或建议一个插件。感谢您提前提供解决方案 您可以在模板或视图侧执行此操作 假设您的首选用户类型为“学生”,您可以执行以下操作: 模板 或者这个: 视图 假设您希望将博客文章的详细信息仅限于学生,则需要在定义“post\u detail\u view”视图函数后立即创建一个条件 def post_detail_view(request): if

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

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

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

模板

或者这个:

视图

假设您希望将博客文章的详细信息仅限于学生,则需要在定义“post\u detail\u 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错误、重定向未经授权的用户等。模板解决方案只允许您限制内容


我希望这能解决您的问题。

请看Django权限,您能推荐官方文档或任何第三方网站以外的任何演示或示例代码吗?我也这么做了。但我想要的是动态访问控制。上面的代码是静态的。@HariharanAR能否请您更具体一些,或者给出一些具有您想要的功能的网站或应用程序的示例
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**