Djangoではテンプレートを継承することで共通部分を複数回記述することを避けられるという話を聞いたので、
早速Qiitaの記事を参考に下記のコードを書いてみた。
base.html
{% load static %}
<html>
<head>
{% block extra_head %}{% endblock %}
<title>hoge</title>
</head>
<body>
{%block content%}
{{content}}
{%endblock%}
</body>
</html>
extend.html
{% extends 'homepage/base.html' %}
{% block extra_head %}
<link rel="stylesheet" href="{% static 'css/extend.css'%}">
{% endblock %}
{% block content %}
<h1>Hello,World!</h1>
{% endblock %}
このように書けばbase.htmlを継承したextend.htmlが表示されると思っていたのだが、実際にはTemplateSyntaxErrorが出てしまった。
base.htmlではなくextend.htmlの方でcssを適用しようとしたのだが、どうもそこが上手く行っていないらしい。
その後初心者ながら適当にいじりまわしたところ、なんとか解決法を見つけることが出来た。
extend.html
{% extends 'homepage/base.html' %}
{% load static %}
{% block extra_head %}
<link rel="stylesheet" href="{% static 'css/extend.css'%}">
{% endblock %}
{% block content %}
<h1>Hello,World!</h1>
{% endblock %}
このようにextend.htmlの2行目に{% load static %}を入れることでエラーを吐かれることなくCSSを適用することが出来た。
どうやらbase.htmlの方に{% load static %}を入れたからといって、extend.htmlの方に入れなくて良いということではなかったらしい。
恐らくほとんどの人は知っていることだとは思うが、俺のような初心者がこの記事を読んで問題を解決出来たら幸いだ。