我正在迭代我的模型,我想用同一模型中的内容替换该列表,仅通过使用按钮进行排序。假设我有这个:
<div class="col-md-3">
<button>Replace content </button>
</div
<div class="col-md-9">
{% for c in cats%}
{{c.name}}
{% endfor %}
<p>Content to be replaced</p>
</div>
<div class="col-md-9">
{% for c in animal.cats_set.all %}
{{c.name}}
{% endfor %}
<p>Content to replace above content, sorted by if cat belongs to same animal</p>
</div>
在这种情况下,我如何用第二个内容替换该内容?我正在考虑 jQuery。
最佳答案
我首先要发出一个警告:决定是否希望 Django 模板播放器或 JQuery 更改数据是两件截然不同的事情。
Django 将更改服务器上的数据,而 JQuery 用于更改呈现的数据(通常在页面已经显示给用户之后)。
走 Django 路线:
Django 只是一个模板播放器,因此在渲染后无法更改它。它不是一种可以与呈现的页面持续交互的函数式语言。
但是,您可以使用模板语法来放置逻辑来决定数据的去向或使用诸如 the Django Blocks 之类的结构。 :
{% block blockName %}
...
{% endblock %}
当我编写复杂的模板时,我经常发现自己使用这种结构:
{% extends "path/ParentFile.html" %}
{% block content %}
{% include "path/ToDefaultChildFile.html" %}
{% endblock %}
如果您同意页面呈现,然后在页面加载后使用 JQuery 进行更改,那么您将需要查看 JQuery/JavaScript/前端框架代码来执行此操作。
关于javascript - 如何将 Django 模板中的内容替换为其他内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48849430/