Django-overextends adalah aplikasi dapat digunakan kembali Django menyediakan tag template overextends, pengganti drop-in untuk Django meluas tag, yang memungkinkan Anda untuk menggunakan template warisan melingkar.
Penggunaan-kasus utama untuk overextends adalah untuk secara bersamaan menimpa dan memperluas template dari aplikasi dapat digunakan kembali lainnya, dalam proyek Django Anda sendiri.
Contoh
Pertimbangkan modul dan template pengaturan berikut, dengan aplikasi app1 dan app2 dibundel dalam proyek, demi contoh ini:
# 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, "template"),)
Judul
{% Block% utama}
Sebuah ayat dalam app1
{% Enblock%}
{% Overextends "halaman / halaman.html"%}
{% Block% utama}
Sebuah paragraf dalam app2, yang ingin menjadi di atas blok utama app1 ini
{{}} Block.super
{% Enblock%}
{% Overextends "halaman / halaman.html"%}
{% Block% utama}
{{}} Block.super
Sebuah ayat dalam direktori template proyek, di bawah blok utama lainnya
{% Enblock%}
HTML yang dihasilkan diberikan ketika halaman / halaman.html dimuat akan:
Judul
Sebuah paragraf dalam app2, yang ingin menjadi di atas blok utama app1 ini
Sebuah ayat dalam app1
Sebuah ayat dalam direktori template proyek, di bawah blok utama lainnya
Copyright 2012
Untuk analisis rinci mengapa Anda akan menggunakan pendekatan ini, cara kerjanya, dan pendekatan alternatif, membaca posting blog awal saya: Edaran Template Warisan untuk Django.
Instalasi
Cara termudah untuk menginstal Django-overextends langsung dari pypi menggunakan pip dengan menjalankan perintah berikut:
& Nbsp; pip install -U Django-overextends
Jika tidak, Anda dapat men-download Django-overextends dan menginstalnya langsung dari sumbernya:
& Nbsp; python setup.py install
Konfigurasi Proyek
Setelah terinstal, anda dapat mengkonfigurasi proyek Anda menggunakan Django-overextends dengan menambahkan aplikasi overextends ke INSTALLED_APPS dalam pengaturan modul proyek Anda:
INSTALLED_APPS = (
& Nbsp; # ... aplikasi lain di sini ...
& Nbsp; 'overextends',
)
Perhatikan bahwa sementara meluas tag disediakan oleh overextends.templatetags.overextends_tags paket, adalah tidak perlu untuk menggunakan {% beban overextends_tags%} di template Anda. Seperti meluas tag, overextends harus tag pertama dalam template Anda, sehingga secara otomatis ditambahkan ke Django built-in tag template, menghilangkan kebutuhan untuk memuat perpustakaan tag di setiap template.
Persyaratan :
- Python
- Django
Komentar tidak ditemukan