https://github.com/ailsonguedes/api-catalogo-de-livros
Esta é uma API de catálogo de livros desenvolvida com Django Rest Framework, foi projetada para armazenar informações sobre livros, incluindo nome do livro, nome do autor, ano de lançamento e número da edição.
https://github.com/ailsonguedes/api-catalogo-de-livros
api api-rest django django-api django-rest-framework python3
Last synced: 9 months ago
JSON representation
Esta é uma API de catálogo de livros desenvolvida com Django Rest Framework, foi projetada para armazenar informações sobre livros, incluindo nome do livro, nome do autor, ano de lançamento e número da edição.
- Host: GitHub
- URL: https://github.com/ailsonguedes/api-catalogo-de-livros
- Owner: ailsonguedes
- Created: 2023-11-07T21:12:36.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-11T16:52:23.000Z (over 2 years ago)
- Last Synced: 2025-04-07T12:52:05.166Z (about 1 year ago)
- Topics: api, api-rest, django, django-api, django-rest-framework, python3
- Language: Python
- Homepage: https://documenter.getpostman.com/view/29576774/2s9YXh73uv
- Size: 17.1 MB
- Stars: 7
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
API de Catálogo de Livros
Esta é uma API de catálogo de livros desenvolvida com Django Rest Framework, foi projetada para armazenar informações sobre livros, incluindo nome do livro, nome do autor, ano de lançamento e número da edição.
Você também poderá buscar os livros por gênero, nome do autor, nome do livro, tipo ou nome da editora.
## 🔧 Ferramentas
- Python: é uma linguagem de programação de alto nível, interpretada, orientada a objetos e de propósito geral.
- Django: framework de desenvolvimento web de código aberto, escrito em Python, que oferece uma estrutura robusta e eficiente para a criação de aplicativos web.
- Django Rest Framework: é uma poderosa biblioteca de terceiros para o Django, um framework de desenvolvimento web em Python. O DRF estende a funcionalidade do Django para facilitar a criação de APIs (Application Programming Interfaces) RESTful de maneira eficiente e consistente.
## 📍 Endpoints
- `GET /livro/`: Retorna a lista de todos os livros no catálogo.
- `POST /livro/`: Cria um novo livro no catálogo.
- `GET /livro/{id}/`: Retorna os detalhes de um livro específico com base no ID.
- `PUT /livro/{id}/`: Atualiza as informações de um livro específico com base no ID.
- `GET /livro/?search={param}/`: Retorna os detalhes de livros baseado em parametros que podem ser: `genero`, `nome do autor`, `nome do livro`, `editora` ou `tipo`.
- `DELETE /livro/{id}/`: Exclui um livro específico com base no ID.
## 📄 Modelos de Dados
- `Livro`:
- `id` (campo automático): O identificador único do livro.
- `nome` (string): Nome do livro.
- `nomeDoAutor` (string): Nome do autor do livro.
- `lancamento` (inteiro): Ano de lançamento da primeira versão do livro.
- `numEdicao` (inteiro): Número da edição do livro.
- `tipo` (string): Tipo do livro (livro, mangá, hq...).
- `genero` (string): Genero do livro.
- `editora` (string): Nome da editora.
- `anoEdicao` (inteiro): Ano de lançamento da edição.
- `numEdicao` (inteiro): Numero da edição.
## ⚙️ Uso da API
A API pode ser usada para:
- Listar todos os livros no catálogo.
- Adicionar um novo livro ao catálogo.
- Recuperar detalhes de um livro específico com base no ID.
- Recupera detalhes de livros com base em seu nome, nome do autor, genero, tipo ou editora
- Atualizar informações de um livro existente.
- Excluir um livro específico do catálogo.
## 💻 Como Executar o Projeto
Siga estas etapas para configurar e executar a API em seu ambiente:
1. Clone este repositório:
```shell
git clone https://seurepositorio.git
```
2. Navegue até o diretório do projeto:
```shell
cd nomedoprojeto/
```
3. Crie e ative um ambiente virtual:
```shell
python -m venv venv
source venv/bin/activate # No Windows, use 'venv\Scripts\activate'
```
4. Instale as dependências:
```shell
pip install -r requirements.txt
```
5. Execute as migrações do banco de dados:
```shell
python manage.py migrate
```
6. Inicie o servidor de desenvolvimento:
```shell
python manage.py runserver
```
A API estará acessível em http://localhost:8000/.
## 🌐 Exemplo de Solicitação
### Criar um Novo Livro
Método: POST
URL: http://localhost:8000/livro/
### Corpo da Solicitação:
```json
{
"id":1,
"nome": "Nome do Livro",
"nomeDoAutor": "Nome do Autor",
"lancamento": 2023,
"tipo": "Livro",
"genero": "Genero do Livro",
"editora": "Editora do Livro",
"anoEdicao": 2018,
"numEdicao": 1
}
```
## 🙏 Contribuição:
Contribuições são bem-vindas! Sinta-se à vontade para enviar problemas, solicitações de pull e feedback.