Django Academy · Lektion

STATICFILES och static-taggen

Organisera och referera till era tillgångar

Lektion 1 av 413 steg

STATICFILES och static-taggen är en gratis lektion i Django Academy på CoddyKit. Detta är lektion 1 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Django Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Django Academy innehåller totalt 4 lektioner.

Vad statiska filer är

Din CSS, JavaScript och designbilder ändras inte för varje begäran. Django kallar dessa statiska filer och levererar dem separat från dina Python-vyer. 🎨

Appen static

Django inkluderar django.contrib.staticfiles i INSTALLED_APPS som standard. Den hittar, samlar in och levererar dina resurser, så du behöver inte konfigurera det manuellt.

INSTALLED_APPS = [
    'django.contrib.staticfiles',
]

Var filerna finns

Enligt konventionen sparar du en apps resurser i en mapp med namnet static, precis bredvid dess vyer och mallar. Django söker igenom alla appar efter den mappen.

blog/
  static/
    blog/
      style.css

Namnområdesindela din mapp

Placera resurserna i en mapp som motsvarar appens namn, till exempel static/blog/. Detta namnområde hindrar två appar från att skriva över varandras style.css.

Inställningen STATIC_URL

Inställningen STATIC_URL är sökvägsprefixet som webbläsare använder för att hämta resurser. Begäranden som börjar med detta prefix dirigeras till dina statiska filer.

STATIC_URL = '/static/'

Läs in taggen static

För att referera till resurser i en mall läser du först in taggbiblioteket med load static allra högst upp i filen.

{% load static %}

Använd taggen static

Taggen static omvandlar en relativ resurssökväg till rätt fullständig URL, så att du aldrig behöver hårdkoda STATIC_URL i din HTML.

<link rel="stylesheet" href="{% static 'blog/style.css' %}">

Varför du inte ska hårdkoda

Om du skrev /static/blog/style.css för hand skulle varje sida sluta fungera om du senare ändrade STATIC_URL. Taggen static håller dina länkar flexibla. ✅

Länka JavaScript

Samma static-tagg fungerar för alla resurstyper. Ange en JS-fil i en script-tagg så löser Django sökvägen åt dig.

<script src="{% static 'blog/app.js' %}"></script>

STATICFILES_DIRS

För resurser som gäller hela projektet och inte tillhör någon enskild app lägger du till deras mappar i STATICFILES_DIRS, så söker Django där också.

STATICFILES_DIRS = [BASE_DIR / 'assets']

Finders gör jobbet

I bakgrunden går static finders igenom varje apps static-mapp samt STATICFILES_DIRS för att hitta filen som mallen efterfrågar.

Snabbkontroll

Nu kontrollerar vi hur du refererar till en statisk fil i en mall.

Sammanfattning

Du har lärt dig att statiska filer är din CSS och JS, att de finns i namnområdesindelade static-mappar och att static-taggen bygger deras URL:er på ett tydligt sätt. 🎉

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”STATICFILES och static-taggen” gratis?

Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Django Academy, inklusive ”STATICFILES och static-taggen”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Django Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”STATICFILES och static-taggen”?

Organisera och referera till era tillgångar Ni övar på Django Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Django Academy?

Du behöver inga förkunskaper. Utbildningen i Django Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”STATICFILES och static-taggen”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Django Academy-lektionen?

Ja. Varje Django Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. STATICFILES och static-taggen
  2. collectstatic för produktion
  3. MEDIA_ROOT och filuppladdningar
  4. ImageField och visning av uppladdningar
← Tillbaka till Django Academy