collectstatic voor productie
Statische bestanden voor deployment verzamelen
collectstatic voor productie is een gratis Django Academy-les op CoddyKit. Dit is les 2 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject Django Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus Django Academy bevat in totaal 4 lessen.
Ontwikkeling versus productie
In de ontwikkelomgeving vindt en levert Django statische bestanden voor je. In productie staat dit automatisch leveren uit, dus moet je assets eerst op één plek verzamelen.
Maak kennis met collectstatic
Het commando collectstatic kopieert elk statisch bestand uit elke app naar één uitvoermap, zodat een webserver ze snel kan leveren.
python manage.py collectstaticDe bestemming STATIC_ROOT
collectstatic heeft een bestemming nodig. De instelling STATIC_ROOT verwijst naar de ene map waarin alle verzamelde bestanden worden geschreven.
STATIC_ROOT = BASE_DIR / 'staticfiles'Houd de hoofdmap apart
Stel STATIC_ROOT nooit in op een map die je handmatig bewerkt. Het is een gegenereerde map met uitvoer die bij elke uitvoering van collectstatic opnieuw wordt opgebouwd.
Wat wordt verzameld
collectstatic haalt bestanden op uit de static-map van elke app en uit STATICFILES_DIRS en voegt ze in één keer samen in STATIC_ROOT.
Sla de vraag over
Standaard vraagt het commando om bevestiging voordat bestanden worden overschreven. Voeg in een implementatiescript --noinput toe, zodat het zonder toezicht draait.
python manage.py collectstatic --noinputWanneer voer je het uit
Voer collectstatic uit bij elke implementatie, nadat je nieuwe code hebt opgehaald. Nieuwe of gewijzigde CSS en JS bereiken gebruikers pas nadat ze zijn verzameld.
Cache vernieuwen
De backend ManifestStaticFilesStorage voegt een inhoudshash toe aan elke bestandsnaam, zodat browsers na een implementatie altijd de nieuwste versie ophalen.
STATICFILES_STORAGE = (
'django.contrib.staticfiles.storage'
'.ManifestStaticFilesStorage')Wie levert ze
Django levert STATIC_ROOT niet zelf in productie. Een webserver zoals Nginx of een hulpmiddel zoals WhiteNoise levert deze bestanden in plaats daarvan.
Rommel uit builds negeren
Voeg patronen toe aan --ignore om bestanden over te slaan die je niet wilt kopiëren, zoals bronkaarten of tijdelijke bestanden in een static-map.
python manage.py collectstatic --ignore=*.scssGit en STATIC_ROOT
Omdat STATIC_ROOT wordt gegenereerd, voeg je deze toe aan .gitignore. Je commit je bronassets, niet de verzamelde kopieën.
Korte controle
Controleer de rol van collectstatic.
Samenvatting
Je hebt gezien dat productie collectstatic nodig heeft om assets samen te voegen in STATIC_ROOT, dat je dit bij elke implementatie uitvoert en dat een webserver het resultaat levert. 🚀
Leer Python met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 30
- Lessen
- 120
Veelgestelde vragen
Is de les “collectstatic voor productie” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad Django Academy, waaronder “collectstatic voor productie”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus Django Academy bevat in totaal 4 lessen.
Wat leer ik in “collectstatic voor productie”?
Statische bestanden voor deployment verzamelen Je oefent met Django Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met Django Academy te beginnen?
Ervaring vooraf is niet nodig. Django Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 2 van 4.
Hoe lang duurt de les “collectstatic voor productie”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over Django Academy?
Ja. Elke les over Django Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- STATICFILES en de static-tag
- collectstatic voor productie
- MEDIA_ROOT en bestandsuploads
- ImageField en uploads aanbieden