【问题标题】:Passing values from select tag to views.py将值从选择标签传递到views.py
【发布时间】:2021-06-14 12:49:53
【问题描述】:

我想知道将选项的值传递给 views.py 中的函数在 Django 中是如何工作的。

这是一个简单的 html 代码,其中包含选择标签和一些选项。

提前致谢。

<select>
  <option selected>Open this select menu</option>
  <option value="1">One</option>
  <option value="2">Two</option>
  <option value="3">Three</option>
</select>

【问题讨论】:

    标签: django drop-down-menu django-views django-templates html-select


    【解决方案1】:

    所以您需要使用表单传递它。如果这是您的表单的外观,请为您的选择字段命名,以便您可以在视图中检索它。

    <form action="{% url 'url_name_of_view' %}" method="post">
    {% csrf_token %} #include this if you are sending a post request
    <select name='name_of_select'>
      <option selected>Open this select menu</option>
      <option value="1">One</option>
      <option value="2">Two</option>
      <option value="3">Three</option>
    </select>
    <Button type='submit' />
    </form>
    

    现在,在你看来,

    select_value = request.POST.get('name_of_select') # this variable now contains the selected value.
    

    【讨论】:

      【解决方案2】:

      那里 如果你确实有models.py,你应该先创建一个模型并向它添加一个选择字段,然后使用一个元组的元组来传递你想要的值。 然后通过一个表单,您将能够在您的 views.py 中引用它并知道用户选择了什么值。

      【讨论】:

      • 感谢 Papis 的回复,但我不使用模型,因为我使用 Firebase 的实时数据库,所以我只使用视图。有什么方法可以在不使用适用于 sql 的模型的情况下传递值?
      • 你能简单介绍一下你的数据库组织吗?我的意思是至少你必须以一种或另一种方式链接视图和数据库,因为它们需要通信。很抱歉这个问题,因为我真的习惯了 firebase。
      • 对不起,爸爸。我尝试了另一种解决方案并且它有效。感谢您的努力。
      猜你喜欢
      • 2014-01-13
      • 2017-07-11
      • 1970-01-01
      • 2021-12-23
      • 2020-03-27
      • 1970-01-01
      • 1970-01-01
      • 2013-05-08
      • 1970-01-01
      相关资源
      最近更新 更多