首页 > 解决方案 > 如何通过请求从django模板中的列表中检索数据

问题描述

我正在学习 django。我正在尝试通过制作 todo 应用程序来学习 django。我创建了一个具有模板的视图,其中我使用 for 循环向用户显示项目列表。我还为每个项目创建了一个链接。现在我想访问用户单击的项目,我应该显示与该项目相关的所有详细信息,因为我已经创建了另一个视图。但问题是我没有得到如何访问它。这是我的代码。

 def display_user_tasks(request):
      name = request.user
      task_list = Task.objects.filter(user=User.objects.get(username=request.user.username))
       context = {
        'name': name,
        'task_list': task_list,
        }
       return render(request, 'todo/task_list.html', context) 

def about_tasks(request):
    name = request.user
    task = request.task
    context = {
        'task': task,
        'name': name,
    }
    return render(request, 'todo/about_tasks.html', context)
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Task List</title>
</head>
<body>
<div>
{% if task_list %}
    <p> Hello {{ name }} Here are your tasks</p>

   {% for task in task_list %}
    
        {{ forloop.counter }}
        <a href="about_tasks"> {{ task }}</a> <br>

   {% endfor %}

{% else %}
       <p> No tasks yet </p>
{% endif %}
    <br>
    <button onclick="window.location.href='task-form'">Add task</button>
</div>
</body>
</html>

我刚刚尝试显示用户单击的任务是否正在显示。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>About tasks</title>
</head>
<body>
{{ name }}<br>
{{ task }}
  <p> You will see about your tasks here</p>
</body>
</html>

标签: pythonhtmldjango-viewsdjango-templates

解决方案


最后,我得到了我的问题的答案。我可以将点击的项目作为 url 中的参数发送。所以,我做到了,当我使用相应 url 的名称时,这个参数取值。


推荐阅读