Django CMS,其中包含HTML,如何在一页上两次包含此HTML,以便您可以更改不同的内容?

问题描述

包含/卡文件夹中有一个模板

{% load cms_tags %}
{% load static %}
<div class="cards">
    <div class="card__item">
        <div class="card__top">
            {% placeholder 'card__top_c1' %}
        </div>
        <div class="card__foot">
            {% placeholder 'card__foot_c1' %}
        </div>
    </div>
   .........
</div>

我在一页上两次连接了此文章,是否可能以某种方式包含一个内容,而另一个包含另一个内容????

事实证明,如果我先更改某些内容,然后再更改第二种,可以做什么?

{% include './include/cards.html' %}
<br><br>
{% include './include/cards.html' %}

解决方法

您可以尝试使用if-else。检查代码段

Models.py

class modelname(models.Model):
    position = models.CharField(max_length=50,choices=(
        ('Top','top'),('Footer','foot')
    ))

Cards.html

{% load static %} 
{% if modelname.position == 'top' %}

<div class="card" >
  <div class="card__top">
    {% placeholder 'card__top_c1' %}
  </div>
</div>

{% else %}
<div class= "card">
     <div class="card__foot">
          {% placeholder 'card__foot_c1' %}
     </div>
</div>
{% endif %}