FASTAPI повышает «TypeError: <объект генератора get_db на 0x00 ...> не является вызовом объектом» при передаче функции зPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 FASTAPI повышает «TypeError: <объект генератора get_db на 0x00 ...> не является вызовом объектом» при передаче функции з

Сообщение Anonymous »

Я получаю: < /p>

file "c: \ pythonprojects \ myproject \ routers \ home.py", строка 39, в

@router.get(P /Home ", response_class = htmlresponse) < /p>
. TypeError ('{! R} не является вызовочным объектом'.format (obj))
typeerror: не является Callable Object < /p>
< /blockquote>
probure Prognong>home.py < /blockquote>
home.py < /blockquote>
home.py from fastapi import Depends, APIRouter, Request
from fastapi.templating import Jinja2Templates
from sqlalchemy.orm import Session
from starlette.responses import HTMLResponse

from database import SessionLocal, engine
from models import Base

router = APIRouter()
templates = Jinja2Templates(directory="templates", autoescape=False)
Base.metadata.create_all(bind=engine)

def get_db():
try:
db = SessionLocal()
yield db
finally:
db.close()

@router.get("/home", response_class=HTMLResponse)
async def all_skills(request: Request, db: Session = Depends(get_db())):
all = db.query()
return templates.TemplateResponse("home.html", {"request": request, "show": all})

database.py
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

SQL_ALCHEMY_DATABASE_URL = "postgresql://postgres:password@localhost/DatabaseName"

engine = create_engine(SQL_ALCHEMY_DATABASE_URL)

SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)

Base = declarative_base()

main.py
from fastapi import FastAPI

import models
from database import engine
from routers import home
from starlette.staticfiles import StaticFiles

app = FastAPI()

models.Base.metadata.create_all(bind=engine)

app.mount("/static", StaticFiles(directory="static"), name="static")

app.include_router(home.router)


Подробнее здесь: https://stackoverflow.com/questions/775 ... -a-callabl
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»