Django-overextends เป็น app ที่นำมาใช้ใหม่ Django ให้แม่แท็ก overextends, หล่นแทน Django ขยายแท็กซึ่งช่วยให้คุณสามารถใช้แม่แบบมรดกวงกลม
กรณีการใช้งานหลักสำหรับ overextends เป็นไปพร้อม ๆ กันแทนที่และขยายแม่แบบจากปพลิเคชันอื่น ๆ ที่นำมาใช้ใหม่ในโครงการ Django ของคุณเอง
ตัวอย่าง
พิจารณาโมดูลตั้งค่าต่อไปและแม่แบบที่มีแอพพลิเค 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%}
<ส่วนท้าย> Copyright 2012 ส่วนท้าย>
{% overextends "หน้า / page.html"%}
{% บล็อกหลัก%}
ย่อหน้าใน App2 ที่ต้องการจะอยู่ด้านบนของบล็อกหลักของ App1
{{block.super}}
{% enblock%}
{% overextends "หน้า / page.html"%}
{% บล็อกหลัก%}
{{block.super}}
วรรคในไดเรกทอรีแม่แบบของโครงการภายใต้บล็อกหลักอื่น ๆ
{% enblock%}
HTML ผลเสร็จสิ้นลงเมื่อหน้า / page.html ถูกโหลดจะเป็น:
ชื่อ
ย่อหน้าใน App2 ที่ต้องการจะอยู่ด้านบนของบล็อกหลักของ App1
ย่อหน้าใน App1
วรรคในไดเรกทอรีแม่แบบของโครงการภายใต้บล็อกหลักอื่น ๆ
Copyright 2012
สำหรับการวิเคราะห์รายละเอียดของเหตุผลที่คุณจะใช้วิธีนี้วิธีการทำงานและวิธีการทางเลือกอ่านบล็อกของฉันเริ่มต้นโพสต์: มรดกแม่แบบวงกลมสำหรับ Django
การติดตั้ง
วิธีที่ง่ายที่สุดในการติดตั้ง Django-overextends เป็นโดยตรงจาก PyPi ใช้จุดโดยใช้คำสั่งต่อไปนี้:
& nbsp; จุดติดตั้ง -U Django-overextends
มิฉะนั้นคุณสามารถดาวน์โหลด Django-overextends และติดตั้งได้โดยตรงจากแหล่งที่มา:
& nbsp; หลาม setup.py ติดตั้ง
โครงการกำหนดค่า
เมื่อติดตั้งแล้วคุณสามารถกำหนดค่าโครงการของคุณที่จะใช้ django-overextends โดยการเพิ่มแอพพลิเค overextends เพื่อ INSTALLED_APPS ในโมดูลการตั้งค่าโครงการของคุณ:
INSTALLED_APPS = (
& nbsp; # ... ปพลิเคชันอื่น ๆ ที่นี่ ...
& nbsp; 'overextends',
)
โปรดทราบว่าในขณะที่ขยายแท็กที่มีให้โดย overextends.templatetags.overextends_tags แพคเกจก็ไม่จำเป็นต้องใช้ {โหลด% overextends_tags%} ในแม่แบบของคุณ เช่นเดียวกับขยายแท็ก overextends จะต้องเป็นแท็กแรกในแม่แบบของคุณจึงจะถูกเพิ่มโดยอัตโนมัติไปยัง Django ในตัวแท็กแม่แบบไม่จำเป็นต้องโหลดไลบรารีแท็กในแต่ละแม่แบบ.
ต้องการ
- หลาม
- Django
ความคิดเห็นที่ไม่พบ