Resumo : neste tutorial, você aprenderá como criar um superusuário e usá-lo para entrar na página de administração do Django.
Este tutorial começa onde o tutorial de modelos do Django parou .
Introdução à página de administração do Django
Quando você cria um novo projeto usando o startproject
comando, o Django gera automaticamente a página de administração para gerenciar modelos, incluindo criação, leitura, atualização e exclusão, que geralmente é conhecida como CRUD.
Para acessar a página de administração, você navega até o URL http://127.0.0.1/admin/
. Isso abrirá a página de login:
Observe que o Django especifica o admin/
no urls.py
projeto:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('',include('blog.urls'))
]
Linguagem de código: Python ( python )
O administrador do Django requer uma conta para efetuar login. Portanto, você precisa criar um usuário usando um comando do Django.
Criando uma conta de superusuário
Para criar uma conta de superusuário, você usa o createsuperuser
seguinte comando:
python manage.py createsuperuser
Linguagem de código: texto simples ( texto simples )
Ele solicitará um nome de usuário, endereço de e-mail e senha:
Username: john
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.
Linguagem de código: texto simples ( texto simples )
Execute o servidor de desenvolvimento Django:
python manage.py runserver
Linguagem de código: texto simples ( texto simples )
E faça login usando o usuário criado, você verá a página de administração padrão que gerencia usuários e grupos:
Para mostrar o Post
modelo na página de administração, é necessário cadastrá-lo no admin.py
aplicativo blog
:
from django.contrib import admin
from .models import Post
admin.site.register(Post)
Linguagem de código: Python ( python )
Neste código:
- Primeiro, importe o
Post
arquivomodels.py
. - Segundo, registre-o usando o arquivo
admin.site.register(Post)
.
Depois de registrar o modelo, você verá que ele aparece no site de administração:
A partir daqui, você pode gerenciar as postagens, incluindo criação, atualização, exclusão e visualização das postagens. Por exemplo, você pode criar uma postagem clicando no botão Adicionar:
Vamos criar três postagens:
Exibir dados do banco de dados
Para exibir os posts do banco de dados, é necessário alterar a home()
função no views.py
aplicativo blog
:
from django.shortcuts import render
from .models import Post
def home(request):
posts = Post.objects.all()
context = {'posts': posts}
return render(request, 'blog/home.html', context)
def about(request):
return render(request, 'blog/about.html')
Linguagem de código: Python ( python )
Como funciona.
Primeiro, importe o Post
modelo do models.py
módulo:
from .models import Post
Linguagem de código: Python ( python )
A seguir, obtenha todas as postagens do banco de dados usando o Post
modelo:
posts = Post.objects.all()
Linguagem de código: Python ( python )
O all()
método retorna um QuerySet
que contém todos Post
os objetos do banco de dados. Observe que você aprenderá mais sobre como interagir com o banco de dados na seção Django ORM.
Em seguida, crie um context
dicionário com a chave 'posts'
e o valor como posts
QuerySet:
context = {'posts': posts }
Linguagem de código: JavaScript ( javascript )
Depois disso, passe o context
para a render()
função:
return render(request,'blog/home.html', context)
Linguagem de código: Python ( python )
Por fim, mostre no posts
modelo home.html
:
{% extends 'base.html' %}
{% block content %}
<h1>My Posts</h1>
{% for post in posts %}
<h2>{{ post.title }}</h2>
<small>Published on {{ post.published_at | date:"M d, Y" }} by {{ post.author | title}}</small>
<p>{{ post.content }}</p>
{% endfor %}
{% endblock content %}
Linguagem de código: HTML, XML ( xml )
Se você abrir o URL http://127.0.0.1/
, verá três postagens do banco de dados:
Baixe o código fonte do Projeto Django
Se você baixar o código-fonte do projeto, a senha do superusuário éNJ24on7eJRSd8a2UlSpg
Resumo
- Django vem com um painel de administração padrão que permite gerenciar usuários, grupos e modelos.
- Use o
createsuperuser
para criar um superusuário para efetuar login no site de administração do Django. - Use o
admin.site.register
método para registrar um modelo no painel de administração. - Use o
all()
método deModel.objects
para obter todos os modelosQuerySet
do banco de dados.