На странице AMP я хочу добавить ссылку на свой шрифт в теге стилей. Можем ли мы использовать для этого статику?
@font-face {
font-family: 'Font Awesome 5 Brands';
font-style: normal;
font-weight: normal;
src: url("{% static '/webfonts/fa-brands-400.eot' %}");
src: url("{% static '/webfonts/fa-brands-400.eot?#iefix' %}") format("embedded-opentype"), url("{% static '/webfonts/fa-brands-400.woff2' %}") format("woff2"), url("{% static '/webfonts/fa-brands-400.woff' %}") format("woff"), url("{% static '/webfonts/fa-brands-400.ttf' %}") format("truetype"), url("{% static '/webfonts/fa-brands-400.svg#fontawesome' %}") format("svg"); }
В моем разделе тела это отлично работает для меня.
<amp-img
src = "{% static '\located_in\picture.jpg' %}"
width = "16"
height = "9"
layout = "responsive"
>
</amp-img>
Я получаю следующую ошибку:
Error during template rendering
In template
C:\users\frank\desktop\test_env\src\templates\fontawesome\fontawesome-all.css, error at line 2702
Invalid block tag on line 2702: 'static'. Did you forget to register or load this tag?






Прежде чем вы получите доступ к любому файлу в статическом каталоге Django, вам необходимо загрузить статические файлы с помощью jinja2. Например:
{% load staticfiles %}
<amp-img src = "{% static '\located_in\picture.jpg' %}" width = "16" height = "9" layout = "responsive" > </amp-img>
его синтаксис очень близок к Jinja2 и разработан для этого. Обратитесь сюда. Там написано "Язык шаблонов Django разработан для достижения баланса между мощностью и простотой. Он разработан для тех, кто привык работать с HTML. Если вы знакомы с другими языками текстовых шаблонов, такими как Smarty или Jinja2, вы должны чувствовать себя как дома с шаблонами Django.". Это язык по умолчанию, включенный при использовании django-admin startproject, и он изменится, только если вы сделаете это вручную.
Мне пришлось снова добавить {% load staticfiles %} в свой файл, хотя он был в base.html
Да, даже если это так, {% load static %} - это тег, специфичный для шаблона, над которым вы работаете.
Jinja - это TL по умолчанию для Django