【发布时间】:2022-10-23 19:14:05
【问题描述】:
这个问题的背景是因为我正在尝试找到一种方法来构建具有 2 种不同用户类型的双面界面。
- 用户类型 1 将能够定义用户类型 2 执行的某些操作
- 用户类型 2 将有权访问用户类型 1 提供的任务。但是,所有用户类型 2 将无法访问所有任务。用户类型 2 A 可能具有与用户类型 2 B 不同的操作。
通过设置路径
<model_id>/<model_id>/template,我认为这将是提供清晰的 url 路径并过滤对数据的访问的好方法。以一个名为 Project 的模型为例,在寻找链接到单个 pk_id 时,我通常会执行以下操作:
#views.py def show_project(request, project_id): projects = Project.objects.get(pk=project_id) return render(request, 'main/show_project.html',{'projects':projects}) #url.py path('show_project/<project_id>',views.show_project,name="show-project"), #template.py (referrer) <a class="btn btn-outline-secondary" href="{% url 'show-project' project.id %}">{{project}}</a>这样做可以让我根据模型的 ID 过滤我想要显示的内容。
我想我可以通过添加另一层
<model_id>/<model_id>/template来做类似的事情。坚持上面的例子:
<user_id>/<project_id>/template。所以我想出了以下内容,这显然不起作用。
意见
def function(request, user_id, project_id): user = User.objects.get(pk=user_id) project = Project.objects.get(pk=project_id) return render(request, 'main/test_url.html',{'project':projects, 'users':user})网址
path('<user_id>/<project_id>/test_url',views.test_url,name="test-url"),模板(推荐人)
<a class="btn btn-outline-danger " href="{% url 'test-url' user.id project.id %}">See Test URL</a>
【问题讨论】:
-
Django 显示的错误是什么?
标签: django django-views django-templates django-urls