Updated examples to use Django cached.
authorArmin Ronacher <armin.ronacher@active-4.com>
Sat, 5 Jun 2010 12:31:27 +0000 (14:31 +0200)
committerArmin Ronacher <armin.ronacher@active-4.com>
Sat, 5 Jun 2010 12:31:27 +0000 (14:31 +0200)
--HG--
branch : trunk

examples/bench.py
examples/profile.py
examples/rwbench/djangoext.py

index 0d5a68fef62166b14feb892020abba9dc626be6d..ab3d4b0946443171a69106fe10397e6abc7e87d6 100644 (file)
@@ -103,7 +103,7 @@ try:
 except ImportError:
     test_django = None
 else:
-    django_template = """\
+    django_template = DjangoTemplate("""\
 <!doctype html>
 <html>
   <head>
@@ -131,16 +131,13 @@ else:
     </div>
   </body>
 </html>\
-"""
+""")
 
     def test_django():
         c = DjangoContext(context)
         c['navigation'] = [('index.html', 'Index'), ('downloads.html', 'Downloads'),
                            ('products.html', 'Products')]
-        # recompile template each rendering because that's what django
-        # is doing in normal situations too.  Django is not thread safe
-        # so we can't cache it in regular apps either.
-        DjangoTemplate(django_template).render(c)
+        django_template.render(c)
 
 try:
     from mako.template import Template as MakoTemplate
index a154404c259a1e95ac6d6b4fc95d51723c739dcc..70f1e0d83175fb99c8cc795309dafb16b5ca8b29 100644 (file)
@@ -11,6 +11,9 @@ context = {
 }
 
 source = """\
+% macro testmacro(x)
+  <span>{{ x }}</span>
+% endmacro
 <!doctype html>
 <html>
   <head>
@@ -25,7 +28,7 @@ source = """\
       % for row in table
         <tr>
         % for cell in row
-          <td>${cell}</td>
+          <td>${testmacro(cell)}</td>
         % endfor
         </tr>
       % endfor
index 7cc09715dc5a22cb76f83ffc01676b549c974f93..9e9fa6cf0d709504d6ac6466c4120467f6331812 100644 (file)
@@ -2,7 +2,14 @@
 from rwbench import ROOT
 from os.path import join
 from django.conf import settings
-settings.configure(TEMPLATE_DIRS=(join(ROOT, 'django'),))
+settings.configure(
+    TEMPLATE_DIRS=(join(ROOT, 'django'),),
+    TEMPLATE_LOADERS=(
+        ('django.template.loaders.cached.Loader', (
+            'django.template.loaders.filesystem.Loader',
+        )),
+    )
+)
 from django.template import loader as django_loader, Context as DjangoContext, \
      Node, NodeList, Variable, TokenParser
 from django import template as django_template_module