10 حزم أساسية يجب على كل مطور جانغو معرفتها

يعد Django إطار قويً لتطوير الويب يسمح للمطورين ببناء تطبيقات الويب المعقدة بسرعة. إحدى نقاط القوة الرئيسية في Django هي تصميمه المعياري، الذي يسمح للمطورين بإضافة وظائف إلى تطبيقاتهم عن طريق تثبيت الحزم و إعدادها.

في هذه التدوينة، سنناقش 10 حزم Django أساسية يجب أن يعرفها كل مطور.

1 شريط أدوات تصحيح جانغو

شريط أدوات Django Debug عبارة عن حزمة توفر مجموعة من اللوحات التي تعرض معلومات تصحيح متنوعة حول الطلب/الاستجابة الحالية. إنه أمر ضروري لأي مطور Django يريد تبسيط عملية تصحيح الأخطاء الخاصة به.

إليك كيفية تثبيته:

pip install django-debug-toolbar

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'debug_toolbar',
]

MIDDLEWARE = [
    # other middleware here
    'debug_toolbar.middleware.DebugToolbarMiddleware',
]

INTERNAL_IPS = [
    '127.0.0.1',
]

الآن، عند تشغيل تطبيق Django، يجب أن تشاهد شريط أدوات جديد أعلى صفحتك يعرض معلومات تصحيح الأخطاء المتنوعة.

Django Crispy Forms

Django Crispy Forms عبارة عن حزمة تتيح للمطورين عرض النماذج بسهولة وبطريقة أكثر أناقة واتساقًا. كما أنه يدعم Bootstrap، وهو إطار عمل CSS شائع.

إليك كيفية تثبيته:

pip install django-crispy-forms

ثم أضف الأسطر التالية إلى ملف settings.py :

INSTALLED_APPS = [
    # other installed apps here
    'crispy_forms',
]

CRISPY_TEMPLATE_PACK = 'bootstrap4'

الآن، عندما تقوم بعرض نموذج في تطبيق Django، سيتم عرضه باستخدام قالب Bootstrap.

3 إطار عمل جانغو Rest

Django Rest Framework عبارة عن حزمة تتيح للمطورين إنشاء واجهات برمجة تطبيقات RESTful بسهولة باستخدام Django. إنها حزمة قوية ومرنة توفر الكثير من الوظائف خارج الصندوق.

إليك كيفية تثبيته:

pip install djangorestframework

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'rest_framework',
]

الآن، يمكنك البدء في إنشاء واجهات برمجة التطبيقات RESTful مع Django باستخدام Django Rest Framework.

إطار عمل جانغو Rest: دليل المبتدئين

Django Cors Headers

Django Cors Headers عبارة عن حزمة تسمح للمطورين بتمكين رؤوس مشاركة الموارد عبر الأصل (CORS) في تطبيقات Django الخاصة بهم. تعتبر رؤوس CORS ضرورية عند تقديم طلبات عبر النطاقات من تطبيق ويب.

إليك كيفية تثبيته:

pip install django-cors-headers

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'corsheaders',
]

MIDDLEWARE = [
    # other middleware here
    'corsheaders.middleware.CorsMiddleware',
]

CORS_ORIGIN_ALLOW_ALL = True

الآن، سيرسل تطبيق Django رؤوس CORS الضرورية عند تقديم طلبات عبر النطاقات.

5 Django Extensions

Django Extensions هي حزمة توفر مجموعة من الملحقات المفيدة لـ Django. يتضمن ميزات مثل shell_plus، الذي يوفر نسخة محسنة من Django Shell، وshow_urls، الذي يعرض جميع أنماط URL المحددة في تطبيق Django.

إليك كيفية تثبيته:

pip install django-extensions

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'django_extensions',
]

الآن، يمكنك البدء في استخدام الامتدادات المتنوعة التي توفرها Django Extensions.

Django Redis Cache 6

Django Redis Cache عبارة عن حزمة توفر واجهة خلفية لذاكرة التخزين المؤقت المستندة إلى Redis و هي عبارة عن مخزن بيانات في الذاكرة يمكنه تحسين أداء تطبيقك بشكل كبير عن طريق تخزين البيانات التي يتم الوصول إليها بشكل متكرر مؤقتًا.

إليك كيفية تثبيته:

pip install django-redis-cache

ثم أضف الأسطر التالية إلى ملف settings.py:

CACHES = {
    'default': {
        'BACKEND': 'django_redis.cache.RedisCache',
        'LOCATION': 'redis://localhost:6379/1',
        'OPTIONS': {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient',
        }
    }
}

الآن، يمكنك إعداد تطبيق Django لاستخدام Redis كواجهة خلفية لذاكرة التخزين المؤقت.

Django Celery 7

Django Celery عبارة عن حزمة تتيح لك تشغيل مهام غير متزامنة في تطبيق Django. وهو يتكامل مع Celery، وهو نظام قائمة انتظار المهام الموزعة، للتعامل مع المهام التي تستغرق وقتًا طويلاً أو كثيفة الاستخدام للموارد خارج دورة الاستجابة للطلب.

إليك كيفية تثبيته:

pip install django-celery

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'django_celery_results',
]

CELERY_BROKER_URL = 'redis://localhost:6379/2'
CELERY_RESULT_BACKEND = 'django-db'

بالإضافة إلى ذلك، قم بإنشاء ملف celery.py في دليل مشروعك بالمحتوى التالي:

from celery import Celery
import os

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'your_project.settings')

app = Celery('your_project')
app.config_from_object('django.conf:settings', namespace='CELERY')
app.autodiscover_tasks()

يمكنك الآن تحديد المهام غير المتزامنة وتشغيلها في تطبيق Django باستخدام Celery.

8 Django Guardian

Django Guardian عبارة عن حزمة توفر أذونات على مستوى الكائن لنماذج Django. فهو يسمح لك بتحديد أذونات مخصصة وتعيينها لمستخدمين أو مجموعات محددة، مما يمنحك تحكمًا دقيقًا في الوصول إلى بياناتك.

إليك كيفية تثبيته:

pip install django-guardian

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'guardian',
]

AUTHENTICATION_BACKENDS = [
    'django.contrib.auth.backends.ModelBackend',
    'guardian.backends.ObjectPermissionBackend',
]

الآن، يمكنك تحديد الأذونات على مستوى الكائن وفرضها في نماذج Django.

9 Django Haystack

Django Haystack عبارة عن حزمة توفر حل بحث معياري لتطبيقات Django. وهو يدعم العديد من واجهات البحث الخلفية، مثل Elasticsearch وSolr، ويتيح لك إنشاء وظائف بحث قوية في تطبيقك.

إليك كيفية تثبيته:

pip install django-haystack

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'haystack',
]

HAYSTACK_CONNECTIONS = {
    'default': {
        'ENGINE': 'haystack.backends.elasticsearch5_backend.Elasticsearch5SearchEngine',
        'URL': 'http://localhost:9200/',
        'INDEX_NAME': 'haystack',
    },
}

الآن، يمكنك دمج وظيفة البحث في تطبيق Django باستخدام Django Haystack.

10 Django Storages

Django Storages عبارة عن حزمة توفر الدعم لمختلف واجهات التخزين الخلفية لمعالجة ملفات Django. يتيح لك التبديل بسهولة بين خيارات التخزين المختلفة، مثل تخزين الملفات المحلية، أو Amazon S3، أو Google Cloud Storage، دون تعديل التعليمات البرمجية.

إليك كيفية تثبيته:

pip install django-storages

ثم أضف الأسطر التالية إلى ملف settings.py:

INSTALLED_APPS = [
    # other installed apps here
    'storages',
]

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
AWS_ACCESS_KEY_ID = 'your-access-key-id'
AWS_SECRET_ACCESS_KEY = 'your-secret-access-key'
AWS_STORAGE_BUCKET_NAME = 'your-bucket-name'

استبدل قيم AWS_ACCESS_KEY_ID و AWS_SECRET_ACCESS_KEY و AWS_STORAGE_BUCKET_NAME ببيانات الاعتماد الخاصة بك ومعلومات الحاوية.

الآن، يمكنك التبديل بسهولة بين واجهات التخزين الخلفية المختلفة عن طريق تعديل الإعداد DEFAULT_FILE_STORAGE. على سبيل المثال، إذا كنت تريد استخدام Google Cloud Storage، فيمكنك استخدام الواجهة الخلفية Storages.backends.gcloud.GoogleCloudStorage وتحديث بيانات الاعتماد الضرورية.

توفر حزم Django العشر الأساسية هذه نطاقًا واسعًا من الوظائف ويمكنها تحسين تجربة تطوير Django بشكل كبير. من أدوات تصحيح الأخطاء إلى إدارة ذاكرة التخزين المؤقت، والتعامل مع المهام غير المتزامنة إلى الأذونات على مستوى الكائن، وإمكانات البحث إلى تخزين الملفات المرن، تغطي هذه الحزم جوانب مختلفة من تطوير الويب. سيساعدك دمجها في مشاريع Django الخاصة بك على تبسيط عملية التطوير وتحسين الأداء وإضافة ميزات قوية إلى تطبيقاتك.


اكتشاف المزيد من بايثون العربي

اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Scroll to Top

اكتشاف المزيد من بايثون العربي

اشترك الآن للاستمرار في القراءة والحصول على حق الوصول إلى الأرشيف الكامل.

Continue reading