summaryrefslogtreecommitdiff
path: root/doc/web/howto/listings/iteration-1.py
diff options
context:
space:
mode:
Diffstat (limited to 'doc/web/howto/listings/iteration-1.py')
-rw-r--r--doc/web/howto/listings/iteration-1.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/doc/web/howto/listings/iteration-1.py b/doc/web/howto/listings/iteration-1.py
new file mode 100644
index 0000000..e5ffcd3
--- /dev/null
+++ b/doc/web/howto/listings/iteration-1.py
@@ -0,0 +1,17 @@
+from twisted.web.template import Element, renderer, XMLFile, flattenString
+from twisted.python.filepath import FilePath
+
+class WidgetsElement(Element):
+ loader = XMLFile(FilePath('iteration-1.xml'))
+
+ widgetData = ['gadget', 'contraption', 'gizmo', 'doohickey']
+
+ @renderer
+ def widgets(self, request, tag):
+ for widget in self.widgetData:
+ yield tag.clone().fillSlots(widgetName=widget)
+
+def printResult(result):
+ print result
+
+flattenString(None, WidgetsElement()).addCallback(printResult)