strawberry
? 0.253.1
基於資料類別的 Python GraphQL 函式庫
快速啟動方法提供了伺服器和 CLI 來快速啟動。安裝:
pip install " strawberry-graphql[debug-server] "
使用以下程式碼建立一個名為app.py
的檔案:
import strawberry
@ strawberry . type
class User :
name : str
age : int
@ strawberry . type
class Query :
@ strawberry . field
def user ( self ) -> User :
return User ( name = "Patrick" , age = 100 )
schema = strawberry . Schema ( query = Query )
這將建立一個 GraphQL 架構,定義一個User
類型和一個將傳回硬編碼使用者的單一查詢欄位user
。
若要執行調試伺服器,請執行以下命令:
strawberry server app
點擊以下連結開啟調試伺服器:http://0.0.0.0:8000/graphql
這將打開 GraphiQL,您可以在其中測試 API。
Strawberry 隨附了一個 mypy 插件,可以對 GraphQL 模式進行靜態類型檢查。若要啟用它,請將以下行新增至mypy.ini
配置:
[mypy]
plugins = strawberry.ext.mypy_plugin
提供了 Django 視圖,用於將 GraphQL 端點新增至您的應用程式。
INSTALLED_APPS
。 INSTALLED_APPS = [
..., # your other apps
"strawberry.django" ,
]
urls.py
檔案中。 from strawberry . django . views import GraphQLView
from . schema import schema
urlpatterns = [
...,
path ( "graphql" , GraphQLView . as_view ( schema = schema )),
]
若要支援透過 WebSocket 進行 graphql 訂閱,您需要提供啟用 WebSocket 的伺服器。可以使用以下命令使偵錯伺服器支援 WebSocket:
pip install ' strawberry-graphql[debug-server] '
pip install ' uvicorn[standard] '
我們使用詩歌來管理依賴關係,開始時請按照以下步驟操作:
git clone https://github.com/strawberry-graphql/strawberry
cd strawberry
poetry install --with integrations
poetry run pytest
有關所有更多詳細信息,請查看貢獻頁面
我們有預先提交的配置,要新增掛鉤,請執行以下命令:
pre-commit install
該項目中的代碼已獲得 MIT 許可。請參閱許可證以了解更多資訊。