models.py
: recebe os modelos do banco de dados, modelamos nosso banco usando oregistry
dosqlalchemy
. com oregistry
registramos os metadados referentes ao campo das tabela, nesse caso usamos as dataclasses do python para mapear nossa tabela (mapped relational object), criando um objeto escalar. o atributomapped_column
dosqlalchemy
para mapear as constraints da tabela, comopk
,unique
engine
:
# gerenciamento de contexto live 43
with Session(engine) as session:
# transforma uma função em um gerador playlist introdução a corrotinas live 51
yield session
relationship
: define como as tabelas interagem, o argumentoback-populates
permite a associação bidirecional, ou seja acessar o usuário pelas tarefas e o contário, o argumentocascade
define o que acontece com as tarefa qndo o usuário é deletado.
model_dump
: método doBaseModel
, permite exportar o modelo para um dicionárioexclude_unset
: quandoTrue
apenas os campos selecionados explicitamente definidos serão incluídos no dicionário resultante.setattb
: função embutida para definir valor de um atributo em um objeto