Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

FelipeAngeli/flix_api

Repository files navigation

Flix API

Flix API é um projeto desenvolvido com Django que fornece uma API para gerenciar informações sobre filmes, gêneros, atores e avaliações. O objetivo deste projeto é oferecer um backend robusto e funcional para um sistema de gerenciamento de filmes.

Estrutura do Projeto

O projeto é organizado da seguinte forma:

  • manage.py: Script para gerenciar comandos administrativos do Django.
  • db.sqlite3: Banco de dados SQLite contendo os dados do sistema.
  • app: Diretório principal do projeto.
  • genres, movies, actors, authentication, reviews: Aplicações Django individuais para gerenciar diferentes aspectos do sistema.
  • requirements.txt e requirements_dev.txt: Arquivos para gerenciar dependências do ambiente de produção e desenvolvimento.
  • movies.csv e actors.csv: Dados de exemplo para importação.

Configuração do Ambiente

Pré-requisitos

Certifique-se de ter instalado:

  • Python 3.8 ou superior
  • Virtualenv
  • Git

Configuração do Projeto

  1. Clone o repositório:

    git clone https://github.com/FelipeAngeli/flix_api.git
    cd flix_api
  2. Crie e ative um ambiente virtual:

    python3 -m venv venv
    source venv/bin/activate # No Windows: venv\Scripts\activate
  3. Instale as dependências:

    pip install -r requirements.txt
  4. Configure o banco de dados e aplique as migrações:

    python manage.py makemigrations
    python manage.py migrate
  5. Popule o banco de dados com os arquivos CSV, se necessário:

    python manage.py loaddata actors.csv movies.csv
  6. Inicie o servidor de desenvolvimento:

    python manage.py runserver

O servidor estará disponível em http://127.0.0.1:8000/.

Endpoints da API

A API oferece os seguintes recursos:

  • Filmes:
    • Listar, criar, atualizar e deletar filmes.
  • Gêneros:
    • Listar gêneros disponíveis.
  • Atores:
    • Listar e gerenciar informações de atores.
  • Autenticação:
    • Gerenciamento de usuários e autenticação via JWT.
  • Avaliações:
    • Criar e listar avaliações para filmes.

Exemplo de Requisição

Listar Filmes

GET /api/movies/

Resposta:

[
 {
 "id": 1,
 "title": "O Poderoso Chefão",
 "genre": "Crime",
 "release_date": "1972年03月14日",
 "actors": ["Marlon Brando", "Al Pacino"]
 }
]

Testes

Para executar os testes do projeto:

  1. Instale as dependências de desenvolvimento:

    pip install -r requirements_dev.txt
  2. Execute os testes:

    python manage.py test

Contribuição

Contribuições são bem-vindas! Siga estas etapas:

  1. Faça um fork do projeto.
  2. Crie uma branch para sua feature:
    git checkout -b minha-feature
  3. Faça commit das suas alterações.
  4. Envie um pull request.

Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle によって変換されたページ (->オリジナル) /