Esse é um projeto de estudos para aperfeiçoar os conhecimentos nos projetos de Saas Software as a Services.
Projeto com django utilizando ambiente isolados de dados usando schemas do postgres.
- Python 3.10
- Django 4
- Postgres Latest
- Django Tenants Latest
Observações no OSX foi realizado a alteração no arquivo private/etc/hosts para redirecionadas as rotas: adm.todo.local, cliente.todo.local, cliente2.todo.local para o local host.
requisições em http://cliente.todo.local:8000/beforeidie e http://cliente2.todo.local:8000/beforeidie
- retorna as mesmas listagens já que esse models está em shared apps
requisição em http://cliente.todo.local:8000/
- retorna apenas os resultas da listagem do cliente 1
requisição em http://cliente.todo.local:8000/
- retorna apenas os resultados da listagem do cliente 2
painel do admin nos 3 ambientes cliente1, cliente2 e global
O banco de dados fica com 1 schema para cada ambiente de usuário
Upgrade para django rest framework usando isolamento de ambientes de clientes com dados exclusivos e compartilhados.
Resposta da api para http://cliente.todo.local:8000/api/beforeidie/ e http://cliente2.todo.local:8000/api/beforeidie/ com dados compartilhados
Resposta da api para http://cliente.todo.local:8000/api/mylist/ com dados exclusivo do cliente 1
Resposta da api para http://cliente2.todo.local:8000/api/mylist/ com dados exclusivo do cliente 2