txTemplate ay isang Python module na nagbibigay ng adapter para sa ilang mga popular na template engine upang gawin itong madali callable at kapaki-pakinabang sa loob ng baluktot Web.
txTemplate gumagamit ng zope.interface upang magbigay ng isang pare-pareho loader at interface na template para sa bawat template engine.
Mga sinusuportahang Engine Template
- ClearSilver
- Genshi
- Jinja2
Pagsisimula
Ang lahat ng talagang kailangan mong gawin upang gamitin ang txTemplate sa baluktot ay:
--Import ito
- Lumikha ng isang loader itinuturo sa iyong direktoryo ng template
--Load ang isang template na may sinabi loader
- Tawag template.render, i-attach callback sa nai-render na ipinagpaliban (kung ninanais) at ibalik ang mga ipinagpalibang mula sa at sa iyong mga twisted.web.resource.Resource render_ * mga pamamaraan.
Narito ang isang code sample ng isang baluktot Web mapagkukunan na gumagamit ng txTemplate upang mag-render ng isang magandang template Genshi sasabihin Hello World sa HTML:
-import os
mula sa pag-import twisted.application internet
mula sa pag-import twisted.internet reaktor
mula twisted.web mapagkukunan sa pag-import
mula sa pag-import server twisted.web
-import txtemplate
TEMPLATE_DIR = os.path.join (os.path.dirname (os.path.abspath (__ file__)),
& Nbsp; "template")
klase HelloWorld (resource.Resource):
& Nbsp; def __init __ (sa sarili):
& Nbsp; resource.Resource .__ init __ (sa sarili)
& Nbsp; self.loader = txtemplate.GenshiTemplateLoader (TEMPLATE_DIR)
& Nbsp; def getChild (sa sarili, pangalan, binanggit):
& Nbsp; bumalik sa sarili
& Nbsp; def render_GET (sa sarili, binanggit):
& Nbsp; TEMPLATE_NAME = "hello.xhtml"
& Nbsp; template = self.loader.load (TEMPLATE_NAME)
& Nbsp; context = {"pagbati": "Kamusta",
& Nbsp; "greetee": "Mundo"}
& Nbsp; def cb (nilalaman):
& Nbsp; request.write (nilalaman)
& Nbsp; request.setResponseCode (200)
& Nbsp; request.finish ()
& Nbsp; d = template.render (** konteksto)
& Nbsp; d.addCallback (cb)
& Nbsp; bumalik server.NOT_DONE_YET
site = server.Site (HelloWorld ())
reactor.listenTCP (8888, site)
reactor.run ()
Halimbawang ito ay kasama sa txtemplate / halimbawa / txweb.py at ang template root.xhtml ay nasa txtemplate/examples/templates/root.xhtml.
Requirements:
- Python
Mga Komento hindi natagpuan