Deco records
Deco records é um banco de dados sqlite, pronto para produção de fácil instalação, que está localizado próximo do usuário.
Instalando o deco records no seu site
Para iniciar o processo de instalação, crie um ambiente novo, no admin deco do seu site, ou resete o ambiente que esteja utilizando, por que será feito um publish ao fim desta etapa.
Siga o passo a passo abaixo para realizar a instalação no seu site ou siga o vídeo.
- Entre no admin do seu site na deco
- Na barra lateral clique no menu records
- Em seguida clique em
Setup Deco Records
, aguarde o processo de instalação da app e criação do banco de dados. Nesta etapa, será criado e editado alguns arquivos do seu site (deno.json, .gitignore, manifest.gen.ts, apps/deco/records.ts, drizzle.config.ts, db/schema.ts, .deco/blocks/deco-records.json) - Após a instalação, clique em
Show diff and publish
para publicar a instalação da sua app e criação do banco de dados. - Revise os arquivos alterados, edite a descrição e, por fim, clique em
Publish now
.
Após o processo de publicação finalizar, ao acessar o menu de records, terá a visualização do seu banco de dados.
Criando tabelas
Será necessário ter os arquivos que foram criados durante a instalação do deco records no computador. Caso seja necessário realize um git pull do seu projeto remoto.
Siga o passo a passo abaixo para criar novas tabelas no seu banco de dados ou
siga o vídeo. Neste processo será utilizado o
drizzle-orm e
drizzle-kit para criação das tabelas e
gerenciamento delas no seu banco de dados, através de
schema migrations.
No exemplo a seguir, será criado uma tabela com nome profiles, com as colunas:
id
, name
e email
.
1. Edite o arquivo db/schema.ts
para criar tabelas.
2. Entre no admin do seu site, clique no menu de Settings
, em
seguida, na seção Database credentials, clique em Generate now
. Por fim,
clique no icone de copiar as credenciais.
3. Adicione as credenciais, nas variáveis de ambiente do sistema operacional do seu computador.
4. Execute a deno task db:setup:deps
no seu terminal para
instalar as dependências necessárias para realizar o schema migration. É
necessário versão do deno maior ou igual a 1.43.0 e utilizar a variável de
ambiente DENO_FUTURE=1
para habilitar a instalação de módulos npm.
5. Execute a deno task db:schema:update
, para criar os arquivos
sql responsáveis pela schema migration e aplica-los ao banco de dados. Execute
este comando sempre que realizar uma alteração nas suas tabelas para gerar novas
schema migrations.
6. No menu de records do seu site, no admin da deco, terá as
tabelas de profiles
e __drizzle__migrations
. A tabela drizzle__migrations é
auto gerada e utilizada pelo drizzle-kit para gerenciar os schema migrations.
Adicione os arquivos auto gerados em um git commit e realize um push para o git remoto.
Lendo e escrevendo dados
Com a tabela de profiles criada, agora podemos criar uma section de gerenciar perfis, onde lista, remove e cria um perfil.
Crie uma section que será o gerenciador de perfis.
No exemplo anterior, o inline loader que faz utiliza o cliente drizzle
, que é
fornecido pela app do records, e faz uma consulta no banco de dados, insere e
remove perfis.
Desenvolvendo localmente
Para desenvolver localmente é necessário ter as credenciais de acesso ao banco
de dados, que pode ser criada no admin do seu site na deco. Após ter adicionado
as variáveis de ambiente fornecidas pelo admin, execute a deno task
db:pull:prod
para fazer um dump do seu banco de dados e em seguida, inserir no
banco de dados localmente no arquivo sqlite.db
.
Para acessar o banco do deco records durante o desenvolvimento, é necessário ter
as credenciais nas variáveis de ambiente, que podem ser criadas no admin da
deco. Além das credenciais, precisa de uma nova variável de ambiente, chamada
USE_PRODUCTION_DB
com valor 1
.
Links referencia
Was this page helpful?