首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django在表单中传递一个元组列表并将其放入视图中

Django在表单中传递一个元组列表并将其放入视图中
EN

Stack Overflow用户
提问于 2021-06-10 02:17:15
回答 1查看 118关注 0票数 0

我有一个这种格式的元组列表:(a,b,c),(d,e,f),(g,h,i)。出于某些原因,我需要在表单中将其作为隐藏字段传递,并且在我的视图中需要检索它。然而,我不能这样做。

下面是我的代码片段:

html模板

代码语言:javascript
复制
<form id="form1" action="{% url 'job_recommendations' %}" method="POST">
   {% csrf_token %}
   <a onclick="document.getElementById('form1').submit();">View more recommendations&nbsp</a
   <input type="hidden" name="recommendations" value="{{ job_recommendations }}"> #it 
    is the list that I want to pass. It already has correct values
</form>

views.py

代码语言:javascript
复制
def job_recommendations(request):
    if request.method == "POST":
        recommendations = request.POST['recommendations']

        for job, recruiter, percentage in recommendations:
            print(percentage) 

return render(request, 'recommendations.html')
EN

回答 1

Stack Overflow用户

发布于 2021-06-10 02:30:51

这不是最好的方法,但是你可以使用ast模块。Jinja会将[(a,b,c), (d,e,f),(g,h,i)]作为字符串放入模板中。您将在视图中获得此字符串,然后可以对此字符串调用ast.literal_eval(str)函数以将此字符串转换为列表。

请记住,这是非常不安全的,因为它允许用户从前端在后端执行代码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67909686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档