Django

Uso do valor padrão de NULL no modelo Django

Uso do valor padrão de NULL no modelo Django
O modelo é uma das partes significativas do aplicativo Django baseado em banco de dados. O modelo define a estrutura do banco de dados. O tipo de dados da tabela do banco de dados e a forma de inserir dados com base em diferentes atributos são descritos no Modelo. A validação de dados pode ser controlada usando o modelo também. Cada tabela do banco de dados contém um determinado número de campos ou colunas. O modelo define o tipo de cada campo da tabela. O atributo padrão é usado no modelo para definir um valor padrão para uma área particular se o usuário para aquele campo não inserir dados. O valor padrão de um campo pode ser em branco ou qualquer valor específico. O nulo e em branco valores não são os mesmos. nulo é usado para definir se o valor vazio é permitido ou não para um determinado campo. Se o nulo está configurado para Falso, então a string vazia não será permitida no campo digitado por inteiro, mas a string vazia pode ser atribuída no campo digitado. Se o nulo está configurado para Verdadeiro, então o valor NULL será dado no campo digitado por inteiro no lugar de uma string vazia. blank é usado principalmente para a validação do formulário e não verifica o tipo de dados do campo. A maneira de usar padrão e nulo atributos no modelo Django mostrado neste tutorial.

Pré-requisitos:

Antes de praticar o script deste tutorial, você deve concluir as seguintes tarefas.

UMA. Instale o Django versão 3+ no Ubuntu 20+ (de preferência)
B. Crie um projeto Django
C. Execute o servidor Django para verificar se o servidor está funcionando corretamente ou não.

Configure um aplicativo Django:

UMA. Execute o seguinte comando para criar um aplicativo Django chamado banco de dados.

$ python3 manage.py startapp databaseapp

B. Execute o seguinte comando para criar o usuário para acessar o banco de dados Django. Se você já concluiu o usuário antes, não precisa executar o comando.

$ python3 manage.py cria superusuário

C. Adicione o nome do aplicativo no INSTALLED_APP parte das configurações.arquivo py.

INSTALLED_APPS = [

'Validationapp'
]

D. Crie uma pasta chamada modelos dentro de banco de dados pasta e definir o modelos localização do aplicativo no MODELOS parte de definições.py Arquivo.

MODELOS = [

… .
'DIRS': ['/ home / fahmida / django_pro / databaseapp / templates'],
… .
,
]

Modelo de design com atributos padrão e nulos:

Modifique o modelos.py arquivo com o seguinte script para criar uma tabela chamada produtos que conterá quatro campos sem o campo id. Esses nomes, preço, data_de_manufatura e data_de_expire. O valor do nulo atributo é definido como True para todos os campos. O valor de o espaço em branco atributo é definido como True para todos os campos também. Isso significa que o usuário pode manter os campos em branco antes de enviar o formulário que usará este modelo. O padrão o valor do atributo é definido para o preço, data_de_manufatura e data_de_expire.

modelos.py

# Módulo de importação de modelos
de django.modelos de importação db
# Criar classe para definir a estrutura da mesa dos professores
classe Produto (modelos.Modelo):
nome = modelos.CharField (max_length = 50, null = True, blank = True)
preço = modelos.IntegerField (null = True, default = ", em branco = True)
data_de_manufatura = modelos.DateField (null = True, default = '0000-00-00', blank = True)
expire_date = models.DateField (null = True, default = '0000-00-00', blank = True)

Execute os seguintes comandos de migração para criar os arquivos de migração necessários e a tabela de banco de dados SQLite.

$ python3 manage.py makemigrations databaseapp
$ python3 manage.py migrar

Inserção de dados usando Django Administration Dashboard:

Modifique o conteúdo de o administrador.py arquivo com o seguinte script para registrar o modelo no banco de dados.

admin.py
Modifique o urls.py arquivo com o seguinte script para definir o caminho para abrir o Django Administrative Dashboard.

urls.py

# Importar módulo de administração
de django.contrib import admin
# Módulo de caminho de importação
de django.caminho de importação de urls
# Defina o caminho para o cliente e administrador
urlpatterns = [
caminho ('admin /', admin.local.urls)
]

Agora, execute o servidor Django e acesse o Painel Administrativo do Django usando a seguinte URL.

http: // localhist: 8000 / admin

abra o formulário de entrada do produto clicando Adicionar produto. Se o usuário enviar o formulário sem inserir dados, a seguinte saída aparecerá no navegador. Aqui, dois campos de data estão mostrando erros porque o valor padrão do campo de data não está em um formato válido.

A seguinte saída aparecerá após adicionar os dados de data válidos. Aqui o preço campo está em branco para usar o atributo padrão.

Inserção de dados usando o modelo:

A maneira de inserir dados no produtos tabela usando formulário HTML foi mostrada nesta seção. Aqui, os elementos do formulário serão gerados com base no modelo criado anteriormente.

formulários.py

# Módulo de importação de formulários
de formulários de importação django
# Importar modelo de cliente
de dbapp.modelos de importação de produto
# Defina a classe para o formulário do cliente
classe ProductForm (formulários.ModelForm):
classe Meta:
modelo = produto
campos = '__all__'

Crie o arquivo HTML chamado produtos.html dentro de modelos pasta do aplicativo com o seguinte script. Os dados do formulário serão enviados quando o usuário clicar no Salve  botão.

produtos.html

Formulário de Inscrição do Cliente



% csrf_token%
Formato.as_p

Modifique o Visualizações.py arquivo com o seguinte script para inserir dados no produtos mesa depois de validar o formulário. AddProduct () função é definida no script para verificar se o formulário é enviado ou não, e se o formulário for enviado, ele verificará se os dados do formulário são válidos ou inválidos. Se é válido() função retorna verdadeiro, então os dados serão inseridos no produtos tabela, e uma mensagem de sucesso será exibida no navegador.

Visualizações.py

# Importar módulo HttpResponse
de django.http.resposta importar HttpResponse
# Importar módulo de renderização
de django.importação de atalhos renderização
# Import ProductForm
de dbapp.formulários import ProductForm
# Definir função para adicionar entrada de produto
def AddProduct (solicitação):
se pedido.método == "POST":
form = ProductForm (pedido.PUBLICAR)
# Se os dados do formulário são válidos ou não
se forma.é válido():
tentar:
# Salve os dados do formulário no banco de dados
Formato.Salve ()
# Defina a mensagem para o usuário
dados = ['

O produto adicionado.

']
# Devolva a resposta
retornar HttpResponse (dados)
exceto:
passar
senão:
# Defina o objeto do formulário
form = ProductForm ()
# Mostrar o formulário de entrada do produto
return render (request, 'product.html ', ' form ': form)

Modifique o urls.py arquivo com o seguinte script para definir o caminho para chamar a função de visualização.

urls.py

# Importar módulo de administração
de django.contrib import admin
# Módulo de caminho de importação
de django.caminho de importação de urls
# Vista de importação
de visualizações de importação de dbapp
# Defina o caminho para o cliente e administrador
urlpatterns = [
caminho (", visualizações.AddProduct),
caminho ('admin /', admin.local.urls)
]

Agora, execute o servidor Django e abra a URL base no navegador.

http: // localhist: 8000 /

O seguinte formulário aparecerá.

Os seguintes ValueError aparecerá se o usuário enviar o formulário sem adicionar nenhum dado a ele. Aqui o preço campo é um número inteiro que não pode ser uma string vazia.

Se o usuário inserir os dados válidos como o formulário abaixo e pressionar o Salve  botão, um novo registro de produto será inserido no banco de dados.

A imagem a seguir aparecerá se você abrir o registro recém-inserido do Django Dashboard.

Conclusão:

Um modelo foi projetado usando atributos nulos e padrão neste tutorial. A seguir, as maneiras de inserir dados nestes campos no back-end e no front-end foram mostradas aqui para ajudar o leitor a saber os usos dos atributos padrão e nulos no banco de dados Django.

Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...
Como aumentar o FPS no Linux?
FPS significa Quadros por segundo. A tarefa do FPS é medir a taxa de quadros em reproduções de vídeo ou desempenho de jogos. Em palavras simples, o nú...
Top jogos do Oculus App Lab
Se você é proprietário de um fone de ouvido Oculus, deve estar informado sobre o carregamento lateral. Sideload é o processo de instalação de conteúdo...