与django中的模板混淆
我正在学习django,我有以下模板:与django中的模板混淆,django,Django,我正在学习django,我有以下模板: {% load static ax_base %} {% for tm in team_list %} <div> <div class="card our-team-slider-card mb-3"> <div class="row no-gutters"> <div class="col-sm-4"&
{% load static ax_base %}
{% for tm in team_list %}
<div>
<div class="card our-team-slider-card mb-3">
<div class="row no-gutters">
<div class="col-sm-4">
<a href="" class="card-img-wrap" data-toggle="modal"
data-target=".our-team-photo">
<img src="{% static tm.img %}"
class="card-img" alt="...">
</a>
</div>
<div class="col-sm-8">
<div class="card-body">
<h5 class="card-title mb-4">{{ tm.name }}</h5>
<div class="profession mb-4 fz14 opa05">{{ tm.position }}</div>
<p class="card-text fz14 opa05">{{ tm.bio }}</p>
<div class="contacts mb-2">
<a href=""
class="styled-link text-black">{{ tm.phone }}</a><span> , </span><a
href="" class="styled-link text-black">{{ tm.email }}</a>
</div>
<a href="" class="styled-link text-primary">Send message</a>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{%load static ax\u base%}
{团队_列表%中tm的百分比}
{{tm.name}
{{tm.position}}
{{tm.bio}
,
{%endfor%}
所以,问题是我有两个地方可以重用上面的模板,但是我想做的是在一个地方使用col-sm-4类,而不是在另一个地方使用col-sm-4类。我是否应该为此创建两个单独的模板,即一个使用col-sm-4的模板和另一个不使用col-sm-4的模板?这是否正确?{%load static ax\u base%}
{% load static ax_base %}
{% for tm in team_list %}
<div>
<div class="card our-team-slider-card mb-3">
<div class="row no-gutters">
{% if not hide %}
<div class="col-sm-4">
<a href="" class="card-img-wrap" data-toggle="modal"
data-target=".our-team-photo">
<img src="{% static tm.img %}"
class="card-img" alt="...">
</a>
</div>
{% endif %}
<div class="col-sm-8">
<div class="card-body">
<h5 class="card-title mb-4">{{ tm.name }}</h5>
<div class="profession mb-4 fz14 opa05">{{ tm.position }}</div>
<p class="card-text fz14 opa05">{{ tm.bio }}</p>
<div class="contacts mb-2">
<a href=""
class="styled-link text-black">{{ tm.phone }}</a><span> , </span><a
href="" class="styled-link text-black">{{ tm.email }}</a>
</div>
<a href="" class="styled-link text-primary">Send message</a>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{团队_列表%中tm的百分比}
{%如果不隐藏%}
{%endif%}
{{tm.name}
{{tm.position}}
{{tm.bio}
,
{%endfor%}
我想当你用{%static tm.img%}
传递图像时,你是错的,最好把它改成{{tm.img}
{% load static ax_base %}
{% for tm in team_list %}
<div>
<div class="card our-team-slider-card mb-3">
<div class="row no-gutters">
<div class="col-sm-4">
<a href="" class="card-img-wrap" data-toggle="modal"
data-target=".our-team-photo">
<img src="{{ tm.img }}"
class="card-img" alt="...">
</a>
</div>
<div class="col-sm-8">
<div class="card-body">
<h5 class="card-title mb-4">{{ tm.name }}</h5>
<div class="profession mb-4 fz14 opa05">{{ tm.position }}</div>
<p class="card-text fz14 opa05">{{ tm.bio }}</p>
<div class="contacts mb-2">
<a href=""
class="styled-link text-black">{{ tm.phone }}</a><span> , </span><a>
href="" class="styled-link text-black">{{ tm.email }}</a>
</div>
<a href="" class="styled-link text-primary">Send message</a>
</div>
</div>
</div>
</div>
</div>
{% endfor %}
{%load static ax\u base%}
{团队_列表%中tm的百分比}
{{tm.name}
{{tm.position}}
{{tm.bio}
,
{%endfor%}
您只需在render context dict中传递一个变量,并将其用于有条件显示的块:
{% if show_photo %}
<div class="col-sm-4">
...
</div>
{% endif %}
{%if show_photo%}
...
{%endif%}
如果它是您想要或不想要使用的实际类,也可以使用完全相同的语法处理它:
<div class="{% if use_sm_4 %} col-sm-4 {% else %} some-other-class {% endif %}">
...
</div>
...
最好的方法是传递到上下文bool
变量,比如hide=True
并将类包装在if语句中template@AlexanderLekontsev,请你用必要的代码创建一个答案。)?从你的视图中传递隐藏变量现在检查我想我的答案会回答你的问题question@AlexanderLekontsev,对不起,Alex,我只需要对class=“col-sm-4”使用条件,也就是说,如果我传递hide variable,那么class=“col-sm-4”就不应该使用。如果我不传递hide variable,那么就使用class=“col-sm-4”。这可能实现吗?谢谢,但我如何传递变量,也就是说,我使用的模板类似于{%team\u menu%}我怎样才能传递use_sm_4变量呢?我真的需要你的帮助((你将它传递给视图中的渲染器。你可以在上下文dict中提供额外的变量,并在模板中使用这些变量。例如,签出render():或者如果你使用基于类的视图,只需覆盖get_context_数据,如下所示: