将多个参数传递给 django url 模板

Passing multiple parameters to django url template

我正在尝试从模板化的 django 传递多个 url 参数,以供视图函数使用。以下是我的代码:

参数将传递到的模板片段:

<a href="{% url 'coordinator_assign_project_recommendations' group_id=row.group client_id=row.client  project_id=row.project_id %}" class="btn btn-primary">Assign</a>

视图函数:

def assign_recommended_project(request, group_id, client_id, project_id):
    group = StudentGroup.objects.get(id=group_id)
    group.client = client_id
    group.project = project_id
    group.save()
    project = Project.objects.get(id=project_id)
    project.is_assigned = True
    project.save()
    return redirect("coordinator_view_groups")

视图函数的url:

 path(
        "coordinator/assign_recommended_project/<str:group_id/str:client_id/str:project_id",
        assign_recommended_project,
        name="coordinator_assign_project_recommendations",
    ),

这是显示的错误:

谁能帮我解决这个问题。谢谢。

您需要打开和关闭每个参数的尖括号 (<…>),因此:

path(
    'coordinator/assign_recommended_project/<strong><str:group_id></strong>/<strong><str:client_id></strong>/<strong><str:project_id></strong>/',
    assign_recommended_project,
    name='coordinator_assign_project_recommendations',
),
path(
        "coordinator/assign_recommended_project/<str:group_id>/<str:client_id>/<str:project_id>",
        assign_recommended_project,
        name="coordinator_assign_project_recommendations",
    )