How to use DocumentTemplate custom formats from Python?
I'm using DocumentTemplate from Python (not in Zope) and I want to use a custom format 'javascript_quote' that I've written. In my DTML file I have: <dtml-var name="name" fmt="javascript_quote"> and in the Python code I have def javascript_quote(s): .... template = DocumentTemplate.HTMLFile( 'page.dtml', {'javascript_quote': javascript_quote} ) print template(None, {'data': data}) But it complains that not everything was converted, presumably because it is trying to interpret the fmt="javascript_quote" as a C-style format. How do I get it to use my function? Hamish Lawson ____________________________________________________________ Do You Yahoo!? Get your free @yahoo.co.uk address at http://mail.yahoo.co.uk or your free @yahoo.ie address at http://mail.yahoo.ie
Hamish Lawson wrote:
I'm using DocumentTemplate from Python (not in Zope) and I want to use a custom format 'javascript_quote' that I've written. In my DTML file I have:
<dtml-var name="name" fmt="javascript_quote">
and in the Python code I have
def javascript_quote(s): ....
template = DocumentTemplate.HTMLFile( 'page.dtml', {'javascript_quote': javascript_quote} )
print template(None, {'data': data})
But it complains that not everything was converted, presumably because it is trying to interpret the fmt="javascript_quote" as a C-style format. How do I get it to use my function?
Hamish Lawson
you should implement a formating function and register it with special_formats for examples of both look near the end /DocumentTemplate/DT_Var.py Kapil
Hamish Lawson wrote:
I'm using DocumentTemplate from Python (not in Zope) and I want to use a custom format 'javascript_quote' that I've written. In my DTML file I have:
[snip]
you should implement a formating function and register it with special_formats
for examples of both look near the end /DocumentTemplate/DT_Var.py
Kapil
Another suggestion -- If the thing identified by the 'name' attribute is an instance of a class that you have implemented, then implement javascript_quote as a method in that class. If not, then use Kapil's suggestion above. In either case, you can find the relevant code in /DocumentTemplate/DT_Var.py. Search for 'special_formats' to find out how DocumentTemplate processing does the lookup and applies the formatting format/function/method. - Dave
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )
participants (3)
-
G. David Kuhlman -
Hamish Lawson -
Kapil Thangavelu