Day #105 – 27/04/2023

Hoje eu apanhei para um negócio bem simples: colocar uma trait Identifiable [https://docs.diesel.rs/1.4.x/diesel/associations/trait.Identifiable.html] nos meus modelos.

O que acontecia é o seguinte: eu uso o diesel CLI para gerar o arquivo db_models.rs, que lê minhas migrations e escreve num arquivo structs representando minhas tabelas do banco:

até então, tranquilo. Mas quando eu coloquei a trait Identifiable para ser derivada para minhas structs, eu tava recebendo o erro “module not found: pendingreviews” (pra struct Pendingreview por exemplo).

Eu fiquei batendo a cabeça porque este arquivo é gerado pela diesel CLI então deveria ser tranquilo (apesar de que toda vez que eu gero este arquivo de novo, eu tenho de colocar os #[derive(..) de volta, esta parte é ruim mas não da pra inferir as infos do modelo através das DDL [http://www.bosontreinamentos.com.br/bancos-de-dados/comandos-ddl-sql-e-sua-sintaxe/]).

Então pra resolver, eu só precisei fazer o básico (que eu demorei 1h pra pensar em fazer): ouvir a mensagem do compilador e mostrar onde tava este módulo para o arquivo db_models.rs.

pronto, todos estes três módulos precisaram ser importados para o db_models.rs para que eu pudesse adicionar a trait Identifiable.

Também implementei as rotas na API de usuários (pra manipulação mesmo).

Eu to deixando a parte de autenticação pro final.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s