Validações de campo integradas - Modelos Django
Validações de campo embutidas em modelos Django são as validações padrão que vêm predefinidas para todos os campos Django. Cada campo vem com validações embutidas dos validadores Django . Por exemplo, IntegerField vem com validação interna de que só pode armazenar valores inteiros e que também em um intervalo específico. Da mesma forma, cada campo tem suas próprias validações. Para mais informações, visite Django Models .
Demonstração de validações internas para campos em Django
Considere um projeto denominado geeksforgeeks
com um aplicativo denominado geeks
.
Consulte os artigos a seguir para verificar como criar um projeto e um aplicativo no Django.
Digite o seguinte código no models.py
arquivo do aplicativo geeks .
from
django.db
import
models
from
django.db.models
import
Model
class
GeeksModel(Model):
geeks_field
=
models.IntegerField()
def
__str__(
self
):
return
self
.geeks_field
Depois de executar makemigrations e migrar no Django e renderizar o modelo acima, vamos tentar criar uma instância usando a string “ GfG is Best “.
Você pode ver na interface de administração, não é possível inserir uma string em um IntegerField. Da mesma forma, cada campo tem suas próprias validações.
Adicionar mais validações integradas ao campo
Django tem opções de campos para quase todos os dados que você deseja armazenar no banco de dados, como IntegerField para integer e CharField para strings. Mas existem algumas validações integradas que você pode aplicar nesses campos também. Por exemplo, unique=True
limitará as entradas de um determinado campo a entradas exclusivas. Abaixo está uma lista de validações integradas que você pode usar em seu campo para fazer mais alterações.
Opções de campo | Descrição |
---|---|
Nulo | Se True , Django irá armazenar valores vazios como NULL no banco de dados. O padrão é False . |
Em branco | Se for True , o campo pode ficar em branco. O padrão é False . |
db_column | O nome da coluna do banco de dados a ser usado para este campo. Se não for fornecido, o Django usará o nome do campo. |
Padrão | O valor padrão do campo. Pode ser um valor ou um objeto chamável. Se chamável, será chamado sempre que um novo objeto for criado. |
Texto de ajuda | Texto de “ajuda” extra a ser exibido com o widget de formulário. É útil para documentação, mesmo se seu campo não for usado em um formulário. |
chave primária | Se for True, este campo é a chave primária para o modelo. |
editável | Se for False , o campo não será exibido no admin ou em qualquer outro ModelForm. Eles também são ignorados durante a validação do modelo. O padrão é True . |
mensagens de erro | O argumento error_messages permite que você substitua as mensagens padrão que o campo irá gerar. Passe um dicionário com chaves que correspondam às mensagens de erro que você deseja substituir. |
Texto de ajuda | Texto de “ajuda” extra a ser exibido com o widget de formulário. É útil para documentação, mesmo se seu campo não for usado em um formulário. |
verbose_name | Um nome legível para o campo. Se o nome detalhado não for fornecido, o Django o criará automaticamente usando o nome do atributo do campo, convertendo sublinhados em espaços. |
validadores | Uma lista de validadores a serem executados para este campo. Consulte a documentação dos validadores para obter mais informações. |
Único | Se for True, este campo deve ser exclusivo em toda a tabela. |
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva