Bir HTTP istek mövzu dəyəri əsasında fərqli bir şablon istifadə etmək istəyirəm zaman
dəfə var. Məsələn, müxtəlif domen adları, müxtəlif browser növləri, hətta istinad səhifə. dynamicloader Layihə Django tələbi mövzu bir dəyər əsasında şablonları üçün baxmaq lazımdır ki, rehberler ayrı bir siyahısına daxil etmək üçün imkan verir.
qurmaq
1. `bərpa sizin Python yolu` dynamicloader``.
Sizin `` MIDDLEWARE_CLASSES`` qəbulu 2. et `` 'dynamicloader.middleware.RequestMiddleware, ``.
Sizin `` TEMPLATE_LOADERS`` qəbulu * Top * 3. et `` 'dynamicloader.loader.load_template_source, ``.
4. aşağıdakı formatda yeni qəbulu, `` DYN_TEMPLATE_MAP`` yaradın ::
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; "HTTP_HEADER1: {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (value1): (/ yol / və / directory ',' / yol / və / directory2 "),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (value2): (/ yol / və / directory3 ')
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; "HTTP_HEADER2: {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (value1): (/ yol / və / directory4 ')
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
Şablon Map nümunələri
Domain Name fərqlər
Bu, misal domen adı və ya alt əsasında müəyyən şablonları yalnış imkan verir. Bu quraşdırma, Django / `` / yol baxmaq üçün / directory`` ilk `` HTTP_HOST`` dəyəri `` www2`` daxildir.
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; "HTTP_HOST: {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (www2): (/ yol / və / directory,),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
Browser fərqlər
Bu, misal istifadəçi browser əsasında müxtəlif şablonları (və ya yalnız xüsusi olanları) təslim etməyə imkan verir.
& Nbsp; & nbsp; & nbsp; DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; "HTTP_USER_AGENT: {
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (iPhone | iPod): (/ yol / və / directory,),
& Nbsp; & nbsp; & nbsp; & Nbsp; & nbsp; & nbsp; }
& Nbsp; & nbsp; & nbsp; }
Sorğu String fərqlər
Bu, misal sorğu simli (bir müddət sonra stuff '?' A URL) əsasında istifadə üçün şablon qərar sorğu simli yoxlayır.
DYN_TEMPLATE_MAP = {
& Nbsp; & nbsp; & nbsp; 'QUERY_STRING: {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; re.compile (imreallycool = 1): (/ yol / və / directory,),
& Nbsp; & nbsp; & nbsp; }
}
tələblər
- Python
- Django
Şərhlər tapılmadı