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 )
これにより、 User
タイプとハードコードされたユーザーを返す単一のクエリ フィールドuser
を定義する GraphQL スキーマが作成されます。
デバッグ サーバーを実行するには、次のコマンドを実行します。
strawberry server app
次のリンクをクリックしてデバッグ サーバーを開きます: http://0.0.0.0:8000/graphql
これにより、API をテストできる GraphiQL が開きます。
Strawberry には、GraphQL スキーマの静的な型チェックを可能にする mypy プラグインが付属しています。これを有効にするには、 mypy.ini
設定に次の行を追加します。
[mypy]
plugins = strawberry.ext.mypy_plugin
GraphQL エンドポイントをアプリケーションに追加するために、Django ビューが提供されます。
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 ライセンスに基づいてライセンスされています。詳細については、「ライセンス」を参照してください。