Projeto de uma livraria web, onde o usuário pode visualizar os livros e suas informações, além de poder fazer uma leitura e baixar o livro em PDF. Poder interagir com outros usuários, comentando e avaliando os livros, e Marcar em sua lista de favoritos. Também tem grupo de usuário responsavel por adicionar, editar e remover livros.
Você também pode pedi para ser parte desse grupo, basta entrar em contato com o administrador do grupo e pedir para ser adicionado.Captcha
no formulário de login
e cadastro
, para evitar ataques de força bruta.
Aqui está uma matriz que descreve as permissões para diferentes tipos de usuários:
Funcionalidade | Visitante | Usuário | Administrador | Usuário de Grupo | Adm. de Grupo |
---|---|---|---|---|---|
Visualizar livros | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Visualizar informações do livro | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Visualizar comentários | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Ler livro | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Buscar livros pelo nome | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Criar conta | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Login | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Avaliar livro | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Comentar livro | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Adicionar livro a lista de favoritos | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Remover livro da lista de favoritos | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Editar perfil | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Refinir senha | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Excluir conta | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Editar comentário | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Excluir comentário | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Recuperar senha | ❌ | ✔️ | ✔️ | ✔️ | ✔️ |
Adicionar livro | ❌ | ❌ | ✔️ | ✔️ | ✔️ |
Remover livro | ❌ | ❌ | ✔️ | ✔️ | ✔️ |
Editar livro | ❌ | ❌ | ✔️ | ✔️ | ✔️ |
Adicionar Usuário ao Grupo | ❌ | ❌ | ✔️ | ❌ | ✔️ |
Remover Usuário do Grupo | ❌ | ❌ | ✔️ | ❌ | ✔️ |
Remover Administrador do Grupo | ❌ | ❌ | ✔️ | ❌ | ✔️ |
Adicionar Administrador de um Grupo | ❌ | ❌ | ✔️ | ❌ | ❌ |
Remover Permissão de um Grupo | ❌ | ❌ | ✔️ | ❌ | ❌ |
Adicionar Permissão a um Grupo | ❌ | ❌ | ✔️ | ❌ | ❌ |
Criar Grupos | ❌ | ❌ | ✔️ | ❌ | ❌ |
Remover Grupo | ❌ | ❌ | ✔️ | ❌ | ❌ |
Editar Grupo | ❌ | ❌ | ✔️ | ❌ | ❌ |
Clone o projeto
git clone https://github.com/Wenderson-Oscar/Livraria.git
Entre no diretório do projeto
cd Livraria
Crie um ambiente virtual
python -m venv venv
Ative o ambiente virtual
Windows
venv\Scripts\activate
Linux
. venv/bin/activate
Instale as dependências
pip install -r requirements.txt
Crie o arquivo .env
na raiz do projeto
touch .env
Adicione as seguintes variáveis de ambiente ao arquivo .env
gerador de chave secreta SECRET_KEY
: Djecrety.
SECRET_KEY="sua_chave_secreta"
DEBUG=False
EMAIL_HOST_USER = 'seu_email'
EMAIL_HOST_PASSWORD = 'sua_chave_de_email'
Crie o banco de dados
python manage.py migrate
Inicie o servidor
python manage.py runserver