添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

如何在Django视图中获得与复选框相关的数据

0 人关注

我有一个数据库,我试图通过Django的模板来访问它。 我希望能够选择一些复选框,并让它在我的views.py中返回与这些复选框相关的项目,这样我就可以对这些数据执行一些逻辑。

template.py

<input type="checkbox" checked autocomplete="off" name="tag" value={{ recipe.id }} />{{ recipe }}

views.py

def create_list(request):
    check_values = request.POST.getlist('tag')
    context = {'check_values': check_values)
    return render(request, 'grocery_lists/create_list.html', context)

create_list.html页面只是显示{{ check_values }}。 这是我尝试的一个故障排除步骤,这样我就可以看到变量check_values中存储的内容,然而,check_values最后是一个空列表。 我很难找到一个适合我的用例的解决方案。 请先谢谢你。

2 个评论
复选框被包裹在一个表单元素中吗?我想,如果你从create_list打印request.POST,你就看不到你的复选框?
复选框没有被包裹在一个表单元素中...... 复选框存在,而且我能够点击我需要的项目。然而,这些信息并没有被转达给我的views.py。 在我转到下一页之后,Create_list只是一个空的列表。
python
django
bootstrap-4
HoundDogSaw
HoundDogSaw
发布于 2022-05-16
1 个回答
pzutils
pzutils
发布于 2022-05-17
已采纳
0 人赞同

根据你的评论--复选框的值没有进入你的视图,因为它不在一个表单中。把它包在一个方法="POST "和动作="{% url 'create_list' %}"的表单中,并有一个提交按钮提交该表单--然后你就可以看到它了。像这样。

<form method="POST" action="{% url 'create_list' %}">
    <input type="checkbox" checked autocomplete="off" name="tag" value={{ recipe.id }} />{{ recipe }}