Django Academy · Les

Veldopties: null, blank, default

Bepaal welke waarden een kolom accepteert.

Les 3 van 413 stappen

Veldopties: null, blank, default is een gratis Django Academy-les op CoddyKit. Dit is les 3 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.

Elk field afstemmen

Naast het type accepteert elk field opties die bepalen welke waarden het accepteert en hoe het zich gedraagt.

null gaat over de database

De optie null bepaalt of de databasekolom NULL mag opslaan. Met null=True kan de kolom leeg zijn in de database.

summary = models.TextField(null=True)

blank gaat over formulieren

De optie blank regelt validatie, niet de database. Met blank=True mogen formulieren het field leeg laten.

summary = models.TextField(blank=True)

null en blank zijn verschillend

Onthoud het onderscheid: null heeft invloed op de databaselaag, terwijl blank de formuliervalidatie beïnvloedt. Ze lossen twee afzonderlijke problemen op.

Vermijd null voor tekstvelden

Laat null bij tekstvelden weg en gebruik alleen blank=True. Django geeft de voorkeur aan een lege tekenreeks boven NULL, zodat er niet twee lege toestanden ontstaan.

note = models.CharField(max_length=100, blank=True)

default levert een waarde

De optie default stelt de waarde in die wordt gebruikt als er geen waarde wordt opgegeven, zodat nieuwe rijen met zinvolle gegevens beginnen.

views = models.IntegerField(default=0)

Aanroepbare standaardwaarden

Een default kan een aanroepbare waarde zijn, zoals timezone.now. Geef de functie zelf door, zonder haakjes, zodat deze voor elke nieuwe rij wordt uitgevoerd.

created = models.DateTimeField(default=timezone.now)

unique voorkomt duplicaten

Voeg unique=True toe en de database weigert twee rijen met dezelfde waarde, ideaal voor gebruikersnamen of slugs. 🚫

username = models.CharField(max_length=50, unique=True)

choices beperkt de opties

De optie choices beperkt een field tot een vaste reeks waarden en geeft in formulieren en de beheeromgeving een keuzelijst weer.

STATUS = [("d", "Draft"), ("p", "Published")]
status = models.CharField(max_length=1, choices=STATUS)

Opties kun je combineren

Je kunt opties vrij combineren op één field, zoals blank=True met default. Combineer ze om precies uit te drukken wat je nodig hebt.

tagline = models.CharField(max_length=120, blank=True, default="")

Wijzigingen vereisen een migratie

Een optie wijzigen verandert het schema. Voer na het aanpassen van null, default of unique een migratie uit, zodat de database overeenkomt.

Korte controle

Wat is het echte verschil tussen null en blank?

Samenvatting: fieldopties

Je weet nu dat null op databaseniveau werkt, blank op formulierniveau, default waarden invult en unique duplicaten voorkomt. Stem je fields vol vertrouwen af! ✨

Gratis beginnen

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 “Veldopties: null, blank, default” gratis?

Ja — je kunt hier op het web alle 3 lessen van het leerpad Django Academy, waaronder “Veldopties: null, blank, default”, 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 “Veldopties: null, blank, default”?

Bepaal welke waarden een kolom accepteert. 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 3 van 4.

Hoe lang duurt de les “Veldopties: null, blank, default”?

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

  1. Een modelklasse definiëren
  2. Veldtypen kiezen
  3. Veldopties: null, blank, default
  4. str en de Meta-klasse
← Terug naar Django Academy