-
Notifications
You must be signed in to change notification settings - Fork 45
Fixtures Dados Iniciais no Banco
Com o decorrer do semestre o software que é desenvolvido na matéria de GPP/MDS vai criando corpo e ficando maior a cada dia. A cada ciclo de entrega do software são adcionadas novas funcionalidades, novos atributos ao que já tinha. E é necessário sempre ter um banco de dados populado para ajudar os desenvolvedores a visuzlizar o que está sendo feito, ajudando-os a ver como ficará melhor e o que possívelmente está errado.
Por isso se viu a necessidade de popular o banco de dados com informações básicas para aplicação tomar um corpo mínimo e facilitar o trabalho dos desenvolvedores em realizar funcionalidade com esses dados. Como o grupo estava utilizando do framework Django este possibilita que seja gerado e jsons contendo as informações do banco de dados. Os jsons que foram gerados era carregado todas as vezes que o docker era construído, logo todas as vezes que a aplicação subia ela já possuia dados cadastrados.
Uma fixture é uma coleção de dados que o Django sabe como importar para o banco de dados.
A maneira mais fácil de criar uma fixture se você já tem algum dado é usar o comando dumpdata que o Djanto disponibiliza para o memso. Ou, você pode escrever fixtures manualmente; “fixtures” podem ser escritas como documentos JSON, XML ou YAML (com PyYAML installed). O documentos de serialização tem mais detalhes sobre cada um destes formatos de serialização.
Através deste comando será possível gerar um json com dados salvo em todas classes da aplicação, esses dados serão salvo no arquivo data.json.
```python python3 manage.py dumpdata > data.json ```Através deste comando será possível gerar um json com os dados da classe de um app espcífico , esses dados serão salvo no arquivo data.json.
```python python3 manage.py dumpdata app > data.json ```Através deste comando será possível gerar um json com os dados de uma úncia classe de um app espcífico , esses dados serão salvo no arquivo data.json.
```python python3 manage.py dumpdata app.classe > data.json ```[
{
"model": "app.class",
"pk": 1,
"fields": {
"field1": "value 1",
"field2": "value 2"
}
},
{
"model": "app.class",
"pk": 2,
"fields": {
"field1": "value 3",
"field2": "value 4"
}
},
]
- model: app.class
pk: 1
fields:
field1: value1
field2: value2
- model: app.class
pk: 2
fields:
field1: value3
field2: value4
Para carregar os arquivos que contem os dados iniciais da aplicação é muito simples, pois o framework já disponibiliza o recurso de loaddata para isso. Por padrão o Django irá procurar dentro da pasta fixtures de cada app os arquivos para poder carregar quano se executa o loaddata.
-
Criar uma pasta fixture dentro do app que deseja colocar o arquivo que contém os dados.
-
Executar o comando:
python3 manage.py loaddata data.json
Obs: data é o nome do arquivo que foi dado a saída do comando de dumpdata.
EPS/MDS - FGA/UnB
Métodos de Desenvolvimento de Software
Gestão de Portfólio e Projetos de Software
RUP (Rational Unified Process)
Fase Elaboração (RUP) Planejamento(PMBOK)
Fase de Construção (RUP), Execução/Monitoramente e Controle (PMBOK)
Fase Transição (RUP), Finalização (PMBOK)
Acceptance Test Driven Development (ATDD)
Integração Contínua Deploy Contínuo
Automação de Ambiente com Docker
Orquestração de Containers com Docker Compose
Automação de Ambiente com Vagrant
Deploy Contínuo na Plataforma Heroku
Integração Contínua com Travis CI
Disponibilizando a Aplicação com o Proxy Reverso Nginx
Tutorial de Instalação do Ionic
Android Integração contínua com Circle CI
Configuração de Ambiente para React Native
Tutorial Instalação Ruby on Rails
Teste Automatizado Cucumber JS
Teste Automatizado Cucumber Rails
Testando AngularJS com Jasmine
Teste Automatizado com Selenium IDE
Configurar o SonarCloud para um projeto usando Jest
Configurar o SonarCloud para um projeto usando Pytest
Configurar o SonarCloud para um projeto usando Mocha e Istambul