تخطَّ إلى المحتوى

🎸 شرح Django

الوسطاء والإعدادات

الدرس 22 من 25· ⏱ 1 دقائق قراءة

الوسطاء (Middleware)

طبقات تعالج كل طلب/استجابة (أمان، جلسات، مصادقة):

# settings.py
MIDDLEWARE = [
    "django.middleware.security.SecurityMiddleware",
    "django.contrib.sessions.middleware.SessionMiddleware",
    "django.middleware.csrf.CsrfViewMiddleware",
    "django.contrib.auth.middleware.AuthenticationMiddleware",
    # ...
]

إعدادات مهمّة

DEBUG = False              # دائمًا False في الإنتاج
ALLOWED_HOSTS = ["example.com"]
SECRET_KEY = "..."         # سرّي
DATABASES = { ... }
TIME_ZONE = "Asia/Riyadh"
LANGUAGE_CODE = "ar"

متغيّرات البيئة (مهمّ للأمان)

لا تضع الأسرار في الكود:

import os
SECRET_KEY = os.environ["SECRET_KEY"]
DEBUG = os.environ.get("DEBUG") == "True"

استخدم مكتبة مثل python-decouple أو django-environ لقراءة .env.

وسيط مخصّص

def simple_middleware(get_response):
    def middleware(request):
        # قبل الـ view
        response = get_response(request)
        # بعد الـ view
        return response
    return middleware

⚠️ احفظ SECRET_KEY وDEBUG=False صحيحين في الإنتاج — أهمّ إعدادات الأمان.

🎯 التالي: الأمان.

هل كان هذا الدرس مفيدًا؟