5.1. Model About¶
What are model fields?
Model field arguments
Fat model architecture
Single File vs. Models per file
>>>
... from django.db import models
... from django.utils.translation import gettext_lazy as _
...
...
... class Customer(models.Model):
... firstname = models.CharField(verbose_name=_('First Name'), max_length=50)
... lastname = models.CharField(verbose_name=_('Last Name'), max_length=50, db_index=True)
... birthdate = models.DateField(verbose_name=_('Birthdate'), null=True, blank=True, default=None)
... email = models.EmailField(verbose_name=_('Email'), max_length=100, null=True, blank=True, default=None, unique=True)
... phone = models.CharField(verbose_name=_('Phone Number'), max_length=20, null=True, blank=True, default=None)
... tax_number = models.CharField(verbose_name=_('Tax Number'), max_length=20, null=True, blank=True, default=None)
...
... def __str__(self):
... return f'{self.firstname} {self.lastname}'
...
... class Meta:
... app_label = 'shop'
... verbose_name = _('Customer')
... verbose_name_plural = _('Customers')
5.1.1. Attributes¶
blank
choices
db_column
db_index
default
editable
error_message
help_text
limit_choices_to
max_length
null
primary_key
unique
validators
verbose_name