Levantei o postgresql através de um docker, e configurei o Flask para realizar conexão da seguinte forma: Quando conecto usando essas credenciais pelo DBeaver consigo conectar normalmente.
app = Flask(__name__)
app.config['SQLAlchemy_DATABASE_uri'] = "postgresql://postgres:postgres@db:5432/habit_project"
db = SQLAlchemy(app)
Criei uma entidade Messages
class Messages(db.Model):
__tablename__ = 'messages'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
created_at = db.Column(db.DateTime, nullable=False)
updated_at = db.Column(db.DateTime, nullable=False)
public_id = db.Column(db.String(36), nullable=False)
message = db.Column(db.String(100), nullable=False)
id_user_from = db.Column(db.Integer, db.ForeignKey('clients.id'),
nullable=True)
id_user_to = db.Column(db.Integer, db.ForeignKey('clients.id'),
nullable=True)
def __repr__(self):
return '<Name %r>' % self.name
E por fim criei uma rota tal como abaixo.
@app.route('/inicio')
def index():
lista = db.session.query(Messages).all()
print(lista)
#return {lista}
return lista
A variável lista que deveria trazer todos os registros de Messages retorna lista vazia, sendo que a tabela possui dois registros. Alguém saberia me dizer o que estou fazendo de errado ?