Se você usou um dispositivo digital para enviar e receber informações, você usou uma API. Os desenvolvedores criam APIs para permitir que os usuários interajam com os dados de seus aplicativos.

Criar uma API REST é uma maneira conveniente de compartilhar informações. As APIs REST definiram padrões que regulam o compartilhamento de dados entre dispositivos. Para entender como as APIs REST funcionam, você pode criar uma do zero.

Você pode usar a estrutura Django REST para construir uma API REST e usá-la para exibir dados de um banco de dados.

Usando Django com uma API REST

Você pode use uma API REST para buscar dados estruturados por HTTP. Como muitas linguagens e frameworks, o Django permite que você construa sua própria API e consuma outras.

Você também deve ter o seguinte pré-instalado:

  1. A versão mais recente do python.
  2. A versão mais recente do pip.
  3. Pipenv (embora você possa usar venv se quiser).
  4. A última versão do Django.

Depois de instalar todo o software essencial, você está pronto para começar.

instagram viewer

1. Instale o Django REST Framework

Estrutura Django REST é um poderoso kit de ferramentas que você pode usar para construir e configurar APIs da web. Seus recursos personalizáveis ​​o tornam uma escolha popular para criar APIs REST.

Você pode instalar o framework Django REST com o seguinte comando:

pipenv instalar djangorestframework

2. Criar um aplicativo Django

As instruções a seguir explicam como criar um aplicativo de alimentos para coletar nomes e descrições de alimentos populares do Quênia. A API buscará solicitações de um banco de dados para permitir que os usuários interajam com esses dados.

Os aplicativos Django vêm equipados com um banco de dados SQLite, então você não precisa instalar outro banco de dados.

Para criar um aplicativo Django, primeiro crie um projeto chamado comida com o seguinte comando:

django-admin startproject food 

Em seguida, crie um aplicativo Django chamadocomida queniana:

django-admin startapp kenyanfood

3. Registre as configurações do projeto de aplicativo

Registre ocomida quenianaapp nas configurações do projeto sob o APLICATIVOS INSTALADOS variedade. Se você pular esta etapa, o Django não reconhecerá o aplicativo. Além disso, registre o framework Django REST nas mesmas configurações:

# Definição de aplicativo

INSTALADO_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'comida queniana',
'rest_framework',
]

4. Registrar URLs de aplicativos

Registro comida queniana URLs de aplicativos no projeto urls.py arquivo conforme ilustrado abaixo:

de django.contrib importar administrador
de django.urls importar caminho, incluir

urlpadrões = [
caminho('admin/', admin.site.urls),
caminho('', incluir('kenyanfood.urls')),
]

5. Criar uma exibição para a API

Crie uma visualização fictícia no aplicativo views.py arquivo, para que o aplicativo não gere erros. Primeiro, importe o Resposta objeto e@apiview decorador do framework Django REST.

Resposta ajuda a devolver dados esterilizados em JSON formatar enquanto o @apiview exibe a API.

de django.shortcuts importar renderizar
de rest_framework.response importar Resposta
de rest_framework.decorators importar api_view

# Crie suas visualizações aqui.
@api_view(['PEGAR'])
defconseguir comida(solicitar):
retornar Resposta()

6. Crie um caminho de URL para o aplicativo

Crie um caminho de URL para a visualização da API que você criou. Este ponto de extremidade exibe o comida quenianadados.

de django.urls importar caminho
de. importar Visualizações
de django.conf importar configurações

urlpadrões = [
caminho('', visualizações.getFood),
caminho('publicar/', visualizações.postFood),
]

7. Criar um modelo para o aplicativo

A classe de modelo do aplicativo é chamada Comida. Deve ficar assim:

de django.db importar modelos

# Crie seus modelos aqui.
aulaComida(modelos. Modelo):
nome = modelos. CharField (max_length=200)
descrição = modelos. CharField (max_length=500)

Registre o modelo no aplicativo admin.py arquivo como mostrado abaixo:

de django.contrib importar administrador
de .modelos importar Comida

# Registre seus modelos aqui.
administrador.site.registro(Comida)

8. Fazer migrações

Próximo, migrar o aplicativo para criar tabelas no SQLite base de dados. Você pode fazer isso usando o seguinte comando:

Pitãogerenciar.pyfazer migraçõescomida queniana

Em seguida, aplique essas migrações executando este comando:

Pitãogerenciar.pymigrar

Uma migração bem-sucedida ficará assim:

Migrações bem-sucedidas significam que o banco de dados criou tabelas para o comida quenianaAplicativo.

9. Adicionar dados ao banco de dados

Use o Administrador do Django GUI para inserir dados no banco de dados. Administrador do Django possui uma ótima interface para visualizar e gerenciar os dados de sua aplicação.

Como alternativa, você pode usar o shell python na linha de comando para inserir dados manualmente no banco de dados. Neste guia, você usará a interface de administração do Django.

Use o seguinte comando para configurar o administrador do Django:

Pitãogerenciar.pycriarsuperusuário

Quando solicitado, digite seu nome de usuário, e-mail e senha. Você pode então abrir a página de administração usando o link abaixo:

http://127.0.0.1:8000/admin/

Você verá a página de login:

Depois de fazer login, você verá a interface de administração do Django com Grupos e Usuários modelo. Ambos são para autenticação; o Comida modelo está na seção abaixo.

Você pode adicionar e excluir Comida itens do banco de dados da página de administração. Adicione algumas iguarias quenianas, como Ugali, Pilau e Chai, ao banco de dados.

Agora que o banco de dados tem dados, crie a API

10. Serializar o modelo

serializadores converter modelos Django complexos para JSON objetos, facilitando a leitura dos dados na API. A serialização torna os dados mais legíveis na API.

Crie um novo arquivo no aplicativo chamado serializer.py

de rest_framework importar serializadores
de .modelos importar Comida

aulaFoodSerializer(serializadores. ModelSerializer):
aulameta:
modelo=Comida
campos=('nome','descrição')

Você importa o serializadores módulo do rest_framework empacotar e criar um FoodSerializer classe que herda do ModelSerializer aula.

Em seguida, especifique o Comida modelo que deseja serializar e os campos que deseja adicionar à API.

11. Atualize a visualização

Em seguida, atualize a visualização da API com o serializador e Comida modelos.

Primeiro, defina um PEGAR método para recuperar todos os dados do banco de dados com Comida. Objects.all() função. Em seguida, serialize os dados e retorne-os como uma resposta em JSON formatar.

de django.shortcuts importar renderizar
de rest_framework.response importar Resposta
de rest_framework.decorators importar api_view
de .modelos importar Comida
de .serializer importar FoodSerializer

# Crie suas visualizações aqui.
@api_view(['PEGAR'])
defconseguir comida(solicitar):
comida = Comida.objetos.all()
serializer = FoodSerializer (comida, muitos=Verdadeiro)
retornar Resposta (serializer.data)

Em seguida, navegue até o link da URL do servidor:

https://127.0.0.1:8000/

Você verá a API exibindo dados do banco de dados:

Parabéns, você criou uma API REST!

12. Adicionar dados com o método POST

Teste se você pode usar a API REST para adicionar dados ao banco de dados.

Primeiro, defina um PUBLICAR método na exibição.

@api_view(['PUBLICAR'])
defpostComida(solicitar):
serializer = FoodSerializer (data=request.data)
seserializador.é válido():
serializador.salvar()
retornar Resposta (serializer.data)

Em seguida, adicione um caminho no aplicativo urls.py para criar um endpoint para a API PUBLICAR funcionalidade.

urlpadrões = [
caminho('',views.getFood),
caminho('publicar/',views.postFood),
]

Em seguida, navegue até este URL:

https://127.0.0.1:8000/post

você vai ver o PUBLICAR ponto final. Adicionar dados ao banco de dados em JSON formatar no Contente seção e clique no botão PUBLICAR botão. Por exemplo, adicione um novo item alimentar com esta estrutura:

{ "nome":"Maziwa mala", "descrição":"Leite azedo" }

Você verá os dados exibidos em vermelho em JSON formatar.

Agora, se você navegar de volta para o PEGAR ponto final http://127.0.0.1:8000/, você verá a comida 'Maziwa mala,' e sua descrição adicionada.

Agora você tem uma API REST que pode exibir e adicionar itens ao aplicativo. Que tal experimentar outros CRUD métodos? Trabalhando com ATUALIZAR e EXCLUIR aumentarão a funcionalidade de sua API REST.

Como criar uma API REST com Django

Agora você pode criar uma API REST usando Django. Primeiro, crie um aplicativo com um modelo, serialize os dados e crie uma função de exibição. Em seguida, inclua endpoints de URL para visualizar os dados no formato JSON.

Construir APIs REST com a estrutura Django REST é uma maneira conveniente de compartilhar dados e oferecer aos seus usuários uma ótima experiência de cliente.