[ZDP] BackTalk to Document The Zope Book (2.5 Edition)/Appendix C: Zope Page Templates Reference

webmaster@zope.org webmaster@zope.org
Tue, 08 Oct 2002 11:00:38 -0400


A comment to the paragraph below was recently added via http://www.zope.org/Documentation/Books/ZopeBook/current/AppendixC.stx#3-13

---------------

      Expressions used in statements may return values of any type,
      although most statements will only accept strings, or will convert
      values into a string representation.  The expression language must
      define a value named *nothing* that is not a string.  In
      particular, this value is useful for deleting elements or
      attributes.

        % Anonymous User - Aug. 21, 2002 6:26 am:
         From somewhere I copied a line like this:

             <tal:block replace="structure here/sometemplate" />

         It works fine. Why is "tal:block" not in the list?

        % jshell - Oct. 8, 2002 11:00 am:
         Because 'block' is not a TAL statement. The feature that you're referring to is the ability to make any sort
         of custom tag in the 'tal' namespace. By doing so, all of the TAL statements used inside of the tag, such as
         'replace' or 'define' don't require the 'tal:' prefix. But you can name the outside tag anything::
            <tal:setup define="global extended python:here.getSomeDataFor(...)" />

         is one I use at the start of some templates to get some extra namespaces built.