Django-template-fragment ay isang helper para sa mga template na ginamit sa JavaScript client framework.
Panimula
Kadalasan, kapag gumamit ka ng isang client-side javascript framework (hal gulugod / baga / angular / wathever), makikita mo nais na mag-render maliit na mga template ng iyong pahina. Nagsisimula na ang problema sa kapag:
- Gusto pa rin ninyong magagawang gamitin Django template engine
- At nais mo ang isang cool na lugar upang matukoy ang iyong maliit na mga template.
Iyon ang mga isyu sa 2 na sinusubukan ito Django app upang harapin. Mayroon din itong helper pag-andar para sa mga uri ng mga template, tulad ng verbatim templatetags mula Django 1.5 dev code na nagbibigay-daan sa iyo upang tukuyin ang isang zone kung saan ay hindi bigyang-kahulugan ang Django anumang bagay upang maiwasan ang mga kontrahan sa wika template tulad ng mustache.js.
Gamit ito, mong tukuyin ang lahat ng iyong mga maliit na mga template sa parehong directory at magagawa mong i-access ang mga ito sa mga fragment javascript object na naglalaman ng (render ng Django) template.
Pag-install
Mula sa buto ng bungang-kahoy:
buto ng bungang-kahoy-install Django-template-fragment
Mula setup.py:
Git clone ng Git: //github.com/Psycojoker/django-template-fragments.git
cd Django-template-fragment
python setup.py-install
Lumikha ng dir kung saan mo gustong i-imbak ang iyong mga fragment, pagkatapos ay idagdag FRAGMENTS_DIR sa iyong settings.py, dapat itong maging isang absolute path.
Gusto ko bang tukuyin ang aking FRAGMENTS_DIR tulad nito:
-import os
PROJECT_PATH = os.path.abspath (os.path.split (__ __ file) [0])
SUBPROJECT_PATH = os.path.split (PROJECT_PATH) [0]
FRAGMENTS_DIR = os.path.join (SUBPROJECT_PATH, "fragment")
Ito ay magse-set ito sa direktoryo project_name / fragment (kung saan ang iyong settings.py ay nasa project_name / project_name / settings.py).
Susunod, sumulat ng ilang maliit na mga snippet ng html sa dir.
Pagkatapos ay idagdag ang isang bagay tulad na ito sa iyong urls.py
url (r '^', isama ('fragments.urls')),
At sa isang lugar sa iyong base ng template
Ito ay magbibigay sa iyo ng isang javascript object fragment na naglalaman ng lahat ng iyong mga fragment, ang susi ay ang filename ng fragment nang walang extension.
Halimbawa: object_list.html ay maa-access sa mga fragment object tulad nito: fragments.object_list
Kung inilagay mo ang fragment sa isang subdir sa FRAGMENTS_DIR, ang susi ay ang magiging filename nang hindi sumali sa extension nito sa subdir landas kung saan ang / ay pinalitan ng _.
Hindi malinaw? Narito ang isang halimbawa: ang file FRAGMENTS_DIR / isa / dalawang / three.html maa-access sa key one_two_three.
HamlPy suporta strong>
Kung mayroon kang naka-install na HamlPy at ang iyong pangalan fragment ay nagtatapos sa .haml, Django-template-fragment Dadalhin ito sa account at gamitin HamlPy upang bumuo ng html.
Verbatim tag na
Kailangan mong ilagay fragment sa iyong naka-install na apps sa settings.py upang gumana ito.
Kinuha ko ang code mula sa dev sangay ng Django 1.5 upang payagan ang paggamit ng verbatim templatetags upang maiwasan ang mga salungatan sa pagitan ng Django template syntax at iba pang mga syntax template engine (hal bigote).
Halimbawa:
{%-Load ng mga fragment%}
{{Will_be_interpreted}}
{% Verbatim%}
{{Wont_be_interpredted}}
{% Endverbatim%}
Maaari ka ring pumili ng tukoy na pansarang tag tulad ng inilarawan sa dokumentasyon Django.
Halimbawa mula sa doc:
{%-Load ng mga fragment%}
{% Verbatim myblock%}
& Nbsp; Iwasan ang pag-render ng template sa pamamagitan ng {% verbatim%} {% endverbatim%} block.
{% Endverbatim myblock%}
Binalewalang file extension
Sa pamamagitan ng default Django-template-fragment pinapansin ang bawat file na nagtatapos sa isa sa mga: .pyc .swo .swp ~
. Maaari mong tukuyin ang iyong sariling listahan sa pamamagitan ng pagtukoy FRAGMENTS_IGNORED_FILE_TYPES sa iyong settings.py
Mga Kinakailangan :
- Python
- Django
Mga Komento hindi natagpuan