Reputation: 61
I copied the code from here (official fast api webpage)
And what I get is
Traceback (most recent call last):
...
File "c:\users\nikhi\desktop\upwork\srinath srinath\api_project\venv\lib\site-packages\databases\backends\mysql.py", line 115, in fetch_all
metadata = CursorResultMetaData(context, cursor.description)
File "c:\users\nikhi\desktop\upwork\srinath srinath\api_project\venv\lib\site-packages\sqlalchemy\engine\cursor.py", line 164, in __init__
(
ValueError: not enough values to unpack (expected 5, got 4)
The code is:
from typing import List
import databases
import sqlalchemy
from fastapi import FastAPI
from pydantic import BaseModel
database = databases.Database(DATABASE_URL)
metadata = sqlalchemy.MetaData()
notes = sqlalchemy.Table(
"notes",
metadata,
sqlalchemy.Column("id", sqlalchemy.Integer, primary_key=True),
sqlalchemy.Column("text", sqlalchemy.String(100)),
sqlalchemy.Column("completed", sqlalchemy.Boolean),
)
engine = sqlalchemy.create_engine(
DATABASE_URL
)
metadata.create_all(engine)
app = FastAPI()
@app.on_event("startup")
async def startup():
await database.connect()
@app.on_event("shutdown")
async def shutdown():
await database.disconnect()
@app.get("/notes/", response_model=List[Note])
async def read_notes():
query = notes.select()
return await database.fetch_all(query=query)
What happens is: I am running the code, table is created and after I try to fetch the results. It throws this Exception all the time.
Upvotes: 0
Views: 366