最新回答 / duskash
我來(lái)推薦一個(gè)orm 庫(kù),?tortoise-orm這個(gè)支持異步操作 sqlite3、mysql、postgresql 三種數(shù)據(jù)庫(kù), 配置和部署都比 sqlalchemy 簡(jiǎn)單你說(shuō)的這個(gè)問(wèn)題,?tortoise-orm 里面可以在初始化數(shù)據(jù)庫(kù)的時(shí)候<...code...>?到這里, 后面的 `connection1` 等就可以用 orm 操作了
最贊回答 / duskash
這個(gè)問(wèn)題搞了我一晚上, 終于找到問(wèn)題出在哪了……<...code...>這段代碼里, 當(dāng) city 沒(méi)有值的時(shí)候, 是走下面一條, 注意到最后一行有一個(gè) .all()?這個(gè)方法會(huì)傳回真實(shí)數(shù)據(jù)的 list反觀 if 為真的時(shí)候, 結(jié)尾沒(méi)有 .all(), 這個(gè)時(shí)候返回的是一個(gè) Query, 不是 list, 自然也無(wú)法被 fastapi 轉(zhuǎn)為有意義的輸出, 就報(bào)錯(cuò)了. 我是加上 .all() 之后, 就可以正常跑了
最贊回答 / duskash
新版本的 sqlalchemy 丟棄了 __mappter_args__ 當(dāng)中設(shè)置的方法應(yīng)當(dāng)用 db.query().order_by() 直接在 Query 對(duì)象后面顯示地調(diào)用 order_by 函數(shù)這節(jié)課里, 有一張 City 表 和一張 Data 表, 對(duì)應(yīng)的 crud 方法里面db.query(models.City).order_by(models.City.province).offset().limit().all()db.query(models.Data).order_by(models...
最新回答 / 蝦叔叔
limit: int = None是將None以int形式賦值給limit,可能會(huì)報(bào)錯(cuò)limit: Optional[int] = None是將默認(rèn)值設(shè)置為?None?來(lái)聲明可選查詢參數(shù)
2021-03-31
最贊回答 / OneIsAll_
改成這樣:
return?db.query(models.Data).join(models.City).filter(models.City.province?==?city).all()
最新回答 / duskash
個(gè)人感覺(jué)這是個(gè)好問(wèn)題fastapi.response 下面, 有多種類型的對(duì)象, 例如 HTTPResponse, JSONResponse, FileResponse, StreamResponse 等感覺(jué)你的問(wèn)題可以返回一個(gè)自定義的 JSONResponse 來(lái)解決除了這些對(duì)象, 還有一個(gè)終極大殺招. 就是調(diào)用一個(gè)更“一般”的 Response 類你可以傳遞一個(gè)字典到這個(gè)類里面, 想傳什么數(shù)據(jù)隨意
最贊回答 / JupiterXue
https://github.com/tiangolo/full-stack-fastapi-postgresql前端:Vue后端:FastAPI數(shù)據(jù)庫(kù):PostgreSQL?部署:Docker不一定用得到 Docker,不過(guò)代碼風(fēng)格和 FastAPI 文件結(jié)構(gòu)如何組織值得借鑒。
2021-03-03
最新回答 / 慕移動(dòng)8449242
https://github.com/liaogx/fastapi-tutorial.git
講師回答 / Jack
好的,謝謝關(guān)注!