Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

366
Views
SQL ALCHEMY- API RÁPIDA- OBJETO DEL MÓDULO API NO LLAMABLE

punto final para probar la alquimia sql. El error dice: ¿el objeto del módulo no se puede llamar? Además, la palabra de consulta no está resaltada. El tutorial dice que debería hacer db.query(models.Posts).all() pero eso tampoco funciona. normalmente vs resalta el código y se completa automáticamente para que sepa que se está conectando al objeto correcto.

cuando escribo db.query(), ¿el ide no reconoce el método de consulta? ¿Incluso lo importé manualmente desde sqlalchemy.orm y todavía no se reconoce? todo lo demás funciona bien, solo probar el orm a través del método de consulta está fallando.

El error dice: Archivo "C:****/**/***lib\site-packages\sqlalchemy\orm\session.py", línea 747, en _connection_for_bind conn = bind.connect() AttributeError: 'function' el objeto no tiene atributo 'conectar'

En el tutorial, el profesor simplemente escribe db. query(models.Post).all() y se reconocen todas las funciones y métodos. En la consulta mía no se reconoce. Ayuda por favor.


 from logging import exception from random import randrange from tkinter.tix import STATUS from typing import Optional from urllib import response from fastapi import Body, FastAPI, Query, Response ,status, HTTPException , Depends from pydantic import BaseModel import psycopg2 from psycopg2.extras import RealDictCursor import time from sqlalchemy import create_engine, engine_from_config from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker,session , query import models from database import ormengine , SessionLocal , get_db @app.get("/sqlalchemy") def test_post(db: session= Depends(get_db)): post = db.query(models.Post).all() return {"data":post}

El archivo models.py es:

 import string from typing import Text from xmlrpc.client import boolean from database import Base, SessionLocal from sqlalchemy import TIMESTAMP, Integer, PrimaryKeyConstraint, String, Boolean, Column from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.sql.expression import null , text from sqlalchemy.sql.sqltypes import Text , TIMESTAMP class Post(Base): __tablename__= 'apiproj2' id= Column( Integer , primary_key= True, nullable= False) title= Column( String, nullable= False) content = Column( String, nullable= False) published= Column(Boolean, server_default= 'True' , nullable=False) created_at = Column(TIMESTAMP( timezone=True), nullable= False , server_default= text('now()'))

base de datos.py

 from sqlalchemy import create_engine, engine_from_config from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker SQLALCHEMY_DATABASE_URL = "postgresql://postgres:naijalife@localhost/fastapi database" sqlalchemy_conn= 'postgresql://postgres:naija4life@localhost/fastapi database' ormengine= create_engine(sqlalchemy_conn) SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind= engine_from_config ) Base = declarative_base() # Dependency def get_db(): db = SessionLocal() try: yield db finally: db.close()
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Estaba llamando a la locomotora equivocada, debería haber llamado a ormengine. El motor que creé para conectarme a la base de datos. El tutorial tenía un error. Cambié esto pero no funcionó, después de reiniciar el código vs funcionó. Gracias por la ayuda chicos.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!