我想根据我收到的上下文数据加载不同的元标记。
如您所见,在情况 1 中,我从
'2. name'
检索名称,而在情况 2 中,它来自 'name'
。当我使用这个 if-else 语句时,我遇到一个错误,指出不允许使用多个块。
{% extends 'base.html' %}
{% load static %}
{% load custom_filters %}
{% if context.api_name == 'case 1' %}
{% block meta_keywords %}
<meta name="keywords" content="some keywords">
{% endblock %}
{% block meta_description %}
<meta name="description" content="{{ context.json_data | get_key:'2. name' |default:'Unknown' }}">
{% endblock %}
{% elif context.api_name == "case 2" %}
{% block meta_keywords %}
<meta name="keywords" content="some keywords">
{% endblock %}
{% block meta_description %}
<meta name="description" content="{{ context.json_data | get_key:'name' |default:'Unknown' }}">
{% endblock %}
{% endif %}
TemplateSyntaxError
django.template.exceptions.TemplateSyntaxError: 'block' tag
with name 'meta_keywords' appears more than once
我也尝试使用
with
来设置临时变量,但我无法让它工作