【问题标题】:Can't retrieve value from Django Template (.html) to my views无法从 Django 模板 (.html) 检索值到我的视图
【发布时间】:2020-12-07 15:17:32
【问题描述】:

我是 Django 新手,我正在尝试开发一个处理学习对象元数据的应用程序。系统的功能之一是查看 L.O.浏览器中的元数据。

我有一个列出数据库查询结果的 HTML 模板。每个结果都带有一个“可视化元数据”按钮,单击该按钮时,应在浏览器中显示该对象的元数据。所以我希望我的按钮将对象 ID 传递回我的视图,这样我就可以通过特定 ID 进行另一个查询并在屏幕上打印结果。

这是我的模板 .html

    {% if objects %}
    <ul>
    {% for object in objects %}
        <li> 
            {{ object.General.title }}
            <form action='visualize' method='POST' name='id' value="{{object.General.id}}">
                {% csrf_token %}
                <button type="submit" >Visualize Metadata </button>
            </form> 
            
        
        </li>

    {% endfor %}
    </ul>
{% else %}
    <p>No results found.</p>
{% endif %}

这是我的views.py函数

def visualize_lom_metadata(request):
    if request.method == 'POST':
        objID = request.POST.get('id')
        return HttpResponse(objID)

现在我只想通过在屏幕上打印 objID 来看看这是否可行。但是当我尝试这样做时,它只会返回“无”。任何人都知道如何将数据从 template.html 检索到我的 Django views.py?

【问题讨论】:

    标签: python html django templates


    【解决方案1】:

    我相信您所有的表单都应该有不同的名称和 ID,并且提交按钮必须绑定到该表单。

    如果您在 Visualize_lom_data 中打印整个 request.POST 以查看您从模板返回的内容,这也会有所帮助。

    【讨论】:

      猜你喜欢
      • 2020-09-24
      • 2015-07-07
      • 2018-02-10
      • 1970-01-01
      • 2018-10-20
      • 2014-08-18
      • 1970-01-01
      • 2021-02-03
      • 1970-01-01
      相关资源
      最近更新 更多