使用变量进行Django循环

疯狂的DroiD

我对python和django框架很陌生。我面临一个小问题,就是无法为我的for循环分配变量。

在我的html文件中,有按钮和列表(使用循环渲染)。

例如:

纽扣

<li><a class="layer-item" href="#" onclick="selectLayer('base')" title="Base layer">Base layer</a></li>
<li><a class="layer-item" href="#" onclick="selectLayer('soil')" title="Soil layers">Soil layers</a></li>

script标签内部,我将变量值更新为

<script>
  var layerType = "";
  function selectLayer(layer){
    layerType = layer;
  }
</script>

另外我在同一个html文件中也有如下循环

{% for layer in base %}
   <div class="col-4">
      <span class="base-layer-title d-block">{{layer.title}}</span>
   </div>
{% endfor %}

在这里,我要替换base单击的按钮。

例如:

<a class="layer-item" href="#" onclick="selectLayer('soil')" title="Soil layers">Soil layers</a>

单击上面的按钮应使for循环为

{% for layer in soil %}
    <div class="col-4">
       <span class="base-layer-title d-block">{{layer.title}}</span>
    </div>
 {% endfor %}

从我的阅读中,您可以执行类似的操作以将值分配给变量。

{% with name="World" %} But not sure how to implement it in my issue.

任何帮助表示赞赏

用户名

另外我在同一个html文件中也有如下循环

{%用于基础%的图层} {{layer.title}} {%endfor%}

在这里,我想根据单击的按钮替换基数。

简而言之,Django是服务器端框架,它无法直接响应任何客户端活动。没有客户端库(如React,JQuery等),您将无法有效地做到这一点。

解决方法1

您可以单击鼠标向服务器发出新请求,然后使用新参数重新呈现整个页面。

urls.py

path('my_pattern/<slug:my_layer>', myview)

views.py

def myView(request, my_layer):
   # your logics
   base = get_layer_data(my_layer) # <-- logic to get list dynamically
   return render(request, 'my_template.html', context={'base':base})

my_template.html

{% for layer in base %}
   <div class="col-4">
      <span class="base-layer-title d-block">{{layer.title}}</span>
   </div>
{% endfor %}
...
<a class="layer-item" href="/my_pattern/soil" title="Soil layers">Soil layers</a>
<a class="layer-item" href="/my_pattern/some_other_layer" title="Some other  layers">Soil layers</a>
...

base将具有动态生成的每个请求数据。

解决方法2

但是,您可以呈现页面上的所有数据,并在引导程序https://getbootstrap.com/docs/4.5/components/collapse/中使用折叠控制它

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用循环变量进行计算

来自分类Dev

在JavaScript中使用PHP变量进行循环

来自分类Dev

在javascript中使用变量进行循环几次

来自分类Dev

使用.size()和const变量进行循环

来自分类Dev

使用变量作为循环间隔进行迭代

来自分类Dev

我该如何使用变量内的变量进行for循环工作

来自分类Dev

跟踪Django中的变量值以进行循环并避免重复

来自分类Dev

如何在每次循环时更改变量的函数进行循环,直到使用所有变量?

来自分类Dev

如何在Postgresql函数中使用变量进行循环查询

来自分类Dev

如何编写函数来循环使用ggplot进行变量绘制

来自分类Dev

使用do循环进行Visual Basic变量验证

来自分类Dev

在grunt.task.run上使用变量进行Grunt for循环

来自分类Dev

在bash命令行中使用递增变量进行循环?

来自分类Dev

使用循环变量进行同名函数调用 - Javascript

来自分类Dev

通过SCSS循环进行变量

来自分类Dev

使用 Django 进行多个 API 调用并循环更新

来自分类Dev

如何在 Django 中使用这个 for 循环变量?

来自分类Dev

使用游标进行循环

来自分类Dev

使用循环进行 if 语句

来自分类Dev

使用变量进行IN操作

来自分类Dev

在FOR循环批处理语法中使用变量进行字符串替换

来自分类Dev

在r中使用for循环对具有给定不同参考水平的许多变量进行重新调整

来自分类Dev

在批处理脚本中使用变量而不是文件名进行循环

来自分类Dev

如何在BASH中使用第3个变量进行循环?

来自分类Dev

以所有可能的组合一次使用两个变量进行循环-UNIX

来自分类Dev

使用RVest进行刮擦和循环的简单解决方案,将for循环的结果存储在变量中

来自分类Dev

使用while循环而不进行进程替换,同时允许在循环内部修改全局变量值

来自分类Dev

Bash使用while循环控制进行for循环

来自分类Dev

在循环中使用循环进行编号

Related 相关文章

  1. 1

    使用循环变量进行计算

  2. 2

    在JavaScript中使用PHP变量进行循环

  3. 3

    在javascript中使用变量进行循环几次

  4. 4

    使用.size()和const变量进行循环

  5. 5

    使用变量作为循环间隔进行迭代

  6. 6

    我该如何使用变量内的变量进行for循环工作

  7. 7

    跟踪Django中的变量值以进行循环并避免重复

  8. 8

    如何在每次循环时更改变量的函数进行循环,直到使用所有变量?

  9. 9

    如何在Postgresql函数中使用变量进行循环查询

  10. 10

    如何编写函数来循环使用ggplot进行变量绘制

  11. 11

    使用do循环进行Visual Basic变量验证

  12. 12

    在grunt.task.run上使用变量进行Grunt for循环

  13. 13

    在bash命令行中使用递增变量进行循环?

  14. 14

    使用循环变量进行同名函数调用 - Javascript

  15. 15

    通过SCSS循环进行变量

  16. 16

    使用 Django 进行多个 API 调用并循环更新

  17. 17

    如何在 Django 中使用这个 for 循环变量?

  18. 18

    使用游标进行循环

  19. 19

    使用循环进行 if 语句

  20. 20

    使用变量进行IN操作

  21. 21

    在FOR循环批处理语法中使用变量进行字符串替换

  22. 22

    在r中使用for循环对具有给定不同参考水平的许多变量进行重新调整

  23. 23

    在批处理脚本中使用变量而不是文件名进行循环

  24. 24

    如何在BASH中使用第3个变量进行循环?

  25. 25

    以所有可能的组合一次使用两个变量进行循环-UNIX

  26. 26

    使用RVest进行刮擦和循环的简单解决方案,将for循环的结果存储在变量中

  27. 27

    使用while循环而不进行进程替换,同时允许在循环内部修改全局变量值

  28. 28

    Bash使用while循环控制进行for循环

  29. 29

    在循环中使用循环进行编号

热门标签

归档