Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Por que o import do arquivo views só funciona depois da variável db?

Por que o não posso colocar o import no topo do arquivo junto com os outros? quando fiz a página não carregou

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from views import  *

Só funciona assim:

db = SQLAlchemy(app)

from views import  *

Gostaria de entender o motivo

2 respostas
solução!

Olá Victoria,

Não olhei o código, mas já tive algo parecido, isso ocorre devido a dependências de carregamento, o banco de dados precisa estar com sua importação feita para ser usando por algum componente dentro da importação das views.

O problema é o ciclo de dependência entre 'app' e 'views'. 'Views' importa 'app' e 'app' importa 'views', criando um loop infinito. O Python não resolve isso implicitamente. No entanto, colocar o import 'views' após a inicialização do Flask resolve o problema, pois o Flask ignora os imports recursivos internamente.