وجانغو-jinja2 هو قطرة من السهل في حل مشروط وبسلاسة تقديم قوالب jinja2 (مع سياقها)، في حين تعثر على محرك قالب جانغو.
افتراضيا، إذا كان اسم الملف يحتوي على تمديد .jinja (أو foo.jinja.html)، سيتم تقديم القالب عبر jinja2.
يمكن تخصيص الشرط الخاص بك عن طريق settings.py في JINJA2_ENGINE_CONDITION، وهي وظيفة التي تتلقى المسار الكامل إلى القالب كما الوسيطة الأولى. يستخدم Jinja2 إذا كانت وظيفة بإرجاع True.
على & nbsp؛ على سبيل المثال، هل يمكن استخدام المحرك إذا كان الملف في جينجا دليل الكشف عن اسمه، أو قراءة السطر الأول من الملف.
هل يمكن أن تجبر كل القوالب لاستخدام jinja2 التي دائما العودة على سبيل المثال صحيح امدا س: صحيح
يتم إنشاء بيئة jinja2 مع نفس البيئة تستخدم رافعات جانغو - هذا هو كل الدلائل عاد قبل كل محمل المحددة في settings.TEMPLATE_LOADERS
تركيب
انتزاع قانون
استنساخ مستودع ووإضافة django_jinja2 لحزم الموقع الثعبان أو تثبيت باستخدام نقطة تثبيت جانغو-jinja2.
أضف إلى settings.py
أضف 'django_jinja2 "إلى تطبيقات المثبتة
INSTALLED_APPS = [
على & nbsp؛ # ...،
على & nbsp؛ "django_jinja2،
]
استبدال تحميل القالب الخاص بك مع رافعات في django_jinja2.loaders.
TEMPLATE_LOADERS = (
على & nbsp؛ "django_jinja2.loaders.filesystem.Loader،
على & nbsp؛ "django_jinja2.loaders.app_directories.Loader،
)
القيام به! الآن كل ما عليك القيام به هو جعل قالب مع جينجا الاسم في التمديد.
الإعدادات الافتراضية
يمكن تجاوز الإعدادات الافتراضية عن طريق إعدادات موقع جانغو الخاص بك.
JINJA2_GLOBAL_CONTEXT = {
على & nbsp؛ 'العكسي': عكس،
على & nbsp؛ "MEDIA_URL ': settings.MEDIA_URL،
على & nbsp؛ "STATIC_URL ': getattr (إعدادات"، STATIC_URL'، '')،
}
JINJA2_EXTENSIONS = []
# يمكن أن تكون وظيفة التي تقبل اسم قالب / قالب تطبيق الاستعراض المفصل
# يمكن للمرء أن يحتمل قراءة الملف وضمان هناك علم أو نمط معين في بداية الملف، الخ
JINJA2_ENGINE_CONDITION = امدا template_path: "جينجا" في os.path.basename (template_path) .split ('.')
# يتم سحبها الملفات الوصول إلى هذه رافعات قالب جانغو في البيئة جينجا
JINJA2_TEMPLATE_LOADERS = settings.TEMPLATE_LOADERS
# تجاوز فئة القالب جينجا 2 كما هو مطلوب
JINJA2_TEMPLATE_CLASS = Jinja2DjangoTemplate
إذا settings.DEBUG:
على & nbsp؛ JINJA2_UNDEFINED_CLASS = Jinja2UndefinedClass
آخر:
على & nbsp؛ JINJA2_UNDEFINED_CLASS = Jinja2UndefinedClass
المتطلبات:
بيثون
جانغو
لم يتم العثور على التعليقات