Не удается загрузить шрифт в Django для страницы AMP

На странице 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?
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
0
132
2

Ответы 2

Прежде чем вы получите доступ к любому файлу в статическом каталоге Django, вам необходимо загрузить статические файлы с помощью jinja2. Например:

{% load staticfiles %}
<amp-img src = "{% static '\located_in\picture.jpg' %}" width = "16" height = "9" layout = "responsive" > </amp-img>

Jinja - это TL по умолчанию для Django

nomeh uchenna 20.03.2018 12:58

его синтаксис очень близок к Jinja2 и разработан для этого. Обратитесь сюда. Там написано "Язык шаблонов Django разработан для достижения баланса между мощностью и простотой. Он разработан для тех, кто привык работать с HTML. Если вы знакомы с другими языками текстовых шаблонов, такими как Smarty или Jinja2, вы должны чувствовать себя как дома с шаблонами Django.". Это язык по умолчанию, включенный при использовании django-admin startproject, и он изменится, только если вы сделаете это вручную.

ICanKindOfCode 20.03.2018 13:10

Мне пришлось снова добавить {% load staticfiles %} в свой файл, хотя он был в base.html

Да, даже если это так, {% load static %} - это тег, специфичный для шаблона, над которым вы работаете.

ICanKindOfCode 20.03.2018 12:48

Другие вопросы по теме