Statische Dateien
Teil des Abschnitts Django-Grundlagen der Django-Journey von Coddy. Lektion 20 von 23.
Die Seiten des Cafés sind schwarz auf weiß. Ein Stylesheet würde das ändern, und Stylesheets, Skripte und Bilder sind statische Dateien: Der Server sendet sie unverändert aus, ohne eine View. Django findet sie auf dieselbe Weise wie Templates: im Ordner static/ jeder installierten App, darin erneut mit dem Namen der App:
shop/static/shop/cart.jsDjango stellt sie unter Adressen bereit, die mit STATIC_URL beginnen. In settings.py ist das "static/", daher ist die Datei unter /static/shop/cart.js erreichbar. Ein Template erstellt die Adresse mit {% static %}, nachdem {% load static %} geladen wurde:
{% load static %}
<script src="{% static 'shop/cart.js' %}"></script>Ein <link rel="stylesheet" href="..."> für ein Stylesheet gehört in den <head>. Füge es in base.html ein, dann wird es auf jeder Seite eingebunden, die diese Vorlage erweitert.
Aufgabe
EinfachGib der Website ein Stylesheet.
- Erstelle
menu/static/menu/style.cssmit mindestensbody { background: #fdf8f2; }. - Lade in
base.htmldie statischen Tags und verknüpfe das Stylesheet im<head>, damit jede Seite auf/static/menu/style.cssverweist.
Drücke auf Ausführen: Die Seiten werden cremefarben.
Probier es selbst
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>{% block title %}Corner Café{% endblock %}</title>
</head>
<body>
<nav>
<a href="{% url 'menu:home' %}">Home</a>
<a href="{% url 'menu:drinks' %}">Drinks</a>
<a href="{% url 'menu:about' %}">About</a>
</nav>
<main>
{% block content %}{% endblock %}
</main>
</body>
</html>
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Django-Grundlagen
1Deine erste Django-Website
Hallo, DjangoEine zweite Seite4Layouts und statische Dateien
Template-VererbungEin Titel für jede SeiteÜbe selbstständig: Django-Playground