انضم إلى المجتمع على Discord
نحن نبحث عن المساهمين ! يرجى التحقق من المشكلات الحالية لمعرفة كيف يمكنك المساعدة ❤️
Graphene هي مكتبة Python ذات رأي لبناء مخططات/أنواع GraphQL بسرعة وسهولة.
يحتوي الجرافين على عمليات تكامل متعددة مع أطر عمل مختلفة:
اندماج | طَرد |
---|---|
SQLAlchemy | الجرافين sqlalchemy |
مونجو | الجرافين مونجو |
اتحاد أبولو | اتحاد الجرافين |
جانغو | الجرافين جانغو |
كما أن Graphene متوافق تمامًا مع مواصفات GraphQL، ويعمل بسلاسة مع جميع عملاء GraphQL، مثل Relay وApollo وgql.
لتثبيت graphene
، فقط قم بتشغيل هذا الأمر في الصدفة الخاصة بك
pip install " graphene>=3.1 "
إليك مثال واحد للبدء:
import graphene
class Query ( graphene . ObjectType ):
hello = graphene . String ( description = 'A typical hello world' )
def resolve_hello ( self , info ):
return 'World'
schema = graphene . Schema ( query = Query )
ثم الاستعلام عن graphene.Schema
بسيط مثل:
query = '''
query SayHello {
hello
}
'''
result = schema . execute ( query )
إذا كنت تريد معرفة المزيد، يمكنك أيضًا التحقق من الأمثلة التالية:
الوثائق والروابط للموارد الإضافية متاحة على https://docs.graphene-python.org/en/latest/
بعد استنساخ هذا الريبو، أنشئ Virtualenv وتأكد من تثبيت التبعيات عن طريق تشغيل:
virtualenv venv
source venv/bin/activate
pip install -e " .[test] "
تعد الاختبارات المكتوبة جيدًا والحفاظ على تغطية اختبار جيدة أمرًا مهمًا لهذا المشروع. أثناء التطوير، قم بإجراء اختبارات جديدة وحالية باستخدام:
pytest graphene/relay/tests/test_node.py # Single file
pytest graphene/relay # All tests in directory
أضف العلامة -s
إذا قمت بإدخال نقاط توقف في التعليمات البرمجية لتصحيح الأخطاء. أضف العلامة -v
("مطول") للحصول على مخرجات اختبار أكثر تفصيلاً. للحصول على مخرجات أكثر تفصيلاً، استخدم -vv
. تحقق من وثائق pytest لمزيد من الخيارات واختبار عناصر التحكم في التشغيل.
تأكد بانتظام من تحديث خطافات pre-commit
وتمكينها:
pre-commit install
يمكنك أيضًا تشغيل المعايير باستخدام:
pytest graphene --benchmark-only
يدعم Graphene عدة إصدارات من Python. للتأكد من أن التغييرات لا تؤدي إلى انتهاك التوافق مع أي من هذه الإصدارات، نستخدم tox
لإنشاء بيئة افتراضية لكل إصدار من إصدارات Python وإجراء الاختبارات مع هذا الإصدار. للتشغيل مع جميع إصدارات Python المحددة في ملف التكوين tox.ini
، ما عليك سوى تشغيل:
tox
إذا كنت ترغب في تشغيل إصدار محدد محدد في ملف tox.ini
:
tox -e py39
يمكن لـ Tox فقط استخدام إصدارات Python المثبتة على نظامك. عند إنشاء طلب سحب، ستعمل مسارات GitHub Actions أيضًا على تشغيل نفس الاختبارات والإبلاغ عن النتائج، لذلك ليست هناك حاجة للمساهمين المحتملين لمحاولة تثبيت كل إصدار من Python على نظامهم الخاص مسبقًا. نحن نقدر المشكلات المفتوحة ونسحب الطلبات لجعل الجرافين أكثر استقرارًا وإفادة!
يتم إنشاء الوثائق باستخدام أبو الهول الممتاز وموضوع مخصص.
يتم إنتاج نسخة HTML من الوثائق عن طريق تشغيل:
make docs