وجانغو-overextends هو التطبيق جانغو قابلة لإعادة الاستخدام وتوفير علامة قالب overextends، بديل الإفلات في لفي جانغو يمتد العلامة، الذي يتيح لك استخدام التعميم الميراث القالب.
استخدام الحالة الأولية للoverextends لتجاوز وقت واحد وتوسيع قوالب من التطبيقات التي يمكن إعادة استخدامها أخرى، في مشروع جانغو الخاصة بك.
مثال
النظر في وحدة الإعدادات التالية والقوالب، مع APP1 تطبيقات وapp2 المجمعة في المشروع، من أجل سبيل المثال في:
# settings.py
INSTALLED_APPS = (
وnbsp؛ "كرة APP1"،
وnbsp؛ "كرة app2"،
وnbsp؛ "كرة overextends"،
)
TEMPLATE_LOADERS = (
وnbsp؛ "كرة django.template.loaders.filesystem.Loader"،
وnbsp؛ "كرة django.template.loaders.app_directories.Loader"،
)
PROJECT_ROOT = os.path.dirname (os.path.abspath (__ file__))
TEMPLATE_DIRS = (os.path.join (PROJECT_ROOT، "القوالب")،)
العنوان
{كتلة٪ الرئيسية٪}
وهناك فقرة في APP1
{٪ enblock٪}
<تذييل> حقوق الطبع 2012 تذييل الصفحة>
{٪ overextends "صفحات / page.html"٪}
{كتلة٪ الرئيسية٪}
وهناك فقرة في app2، أن يريد أن يكون على رأس كتلة الرئيسي APP1 ل
{{}} block.super
{٪ enblock٪}
{٪ overextends "صفحات / page.html"٪}
{كتلة٪ الرئيسية٪}
{{}} block.super
وهناك فقرة في الدليل قالب المشروع، تحت الكتل الرئيسية الأخرى
{٪ enblock٪}
ان HTML الناتجة المقدمة عندما صفحات / تم تحميل page.html أن يكون:
العنوان
وهناك فقرة في app2، أن يريد أن يكون على رأس كتلة الرئيسي APP1 ل
وهناك فقرة في APP1
وهناك فقرة في الدليل قالب المشروع، تحت الكتل الرئيسية الأخرى
حقوق الطبع 2012
للاطلاع على تحليل مفصل لماذا كنت تستخدم هذا النهج، وكيف تعمل، والنهج البديلة، تقرأ رسالتي الأولى بلوق وظيفة: التعميم الميراث قالب لجانغو.
تركيب
أسهل طريقة لتثبيت جانغو-overextends غير مباشرة من PyPi باستخدام نقطة عن طريق تشغيل الأمر التالي:
على & nbsp؛ نقطة تثبيت -U جانغو-overextends
خلاف ذلك يمكنك تحميل جانغو-overextends وتثبيته مباشرة من المصدر:
على & nbsp؛ بيثون setup.py تثبيت
تكوين المشروع
وبمجرد تركيب يمكنك تكوين المشروع الخاص بك لاستخدام جانغو-overextends بإضافة التطبيق overextends إلى INSTALLED_APPS في الوحدة النمطية إعدادات المشروع الخاص بك:
INSTALLED_APPS = (
على & nbsp؛ # ... تطبيقات أخرى هنا ...
على & nbsp؛ "overextends،
)
لاحظ أنه في حين أن يمتد يتم تقديم العلامة من قبل overextends.templatetags.overextends_tags الحزمة، ليس من الضروري استخدام {٪ حمولة overextends_tags٪} في القوالب الخاصة بك. مثل يمتد العلامة، يجب أن يكون overextends العلامة الأولى في القالب الخاص بك، لذلك يتم إضافته تلقائيا إلى المدمج في العلامات قالب جانغو، وإزالة الحاجة لتحميل مكتبة العلامة في كل قالب
المتطلبات:.
بيثون
جانغو
لم يتم العثور على التعليقات