के साथ Jinja2 उदाहरणों को क्यों सजाने के लिए Webapp2 साइट (http://webapp-improved.appspot.com/api/webapp2_extras/jinja2.html) में webapp2_extras.jinja2
का उपयोग करने के तरीके पर एक ट्यूटोरियल है, और कोड नीचे है।@ webapp2.cached_property
मेरा प्रश्न है: क्यों webapp2_extras.jinja2.Jinja2
उदाहरण कैश return jinja2.get_jinja2(app=self.app)
पर वापस कैश करें? मैंने @webapp2.cached_property
के कोड की जांच की और पाया कि उदाहरण BaseHandler
के उदाहरण में यह कैश करता है, जो अनुरोध के बाद नष्ट हो जाएगा, तो इसे कैश करने के लिए परेशान क्यों करें? क्या मुझसे यहां पर कुछ छूट गया?
import webapp2 from webapp2_extras import jinja2 class BaseHandler(webapp2.RequestHandler): @webapp2.cached_property def jinja2(self): # Returns a Jinja2 renderer cached in the app registry. return jinja2.get_jinja2(app=self.app) def render_response(self, _template, **context): # Renders a template and writes the result to the response. rv = self.jinja2.render_template(_template, **context) self.response.write(rv)
मजेदार आपने यह पूछा है ... बस उस पर एक नज़र डाली थी और बिंदु भी नहीं मिल सकता ... एक अनुरोध में एक से अधिक बार उपयोग की जाने वाली चीज़ों के लिए कैश_प्रोपर्टी का एक बिंदु है ... – thomasf1