Eric Walstad wrote:
<html metal:use-macro="here/master.html/macros/portfolio"> <head> <title tal:content="template/title">The Title</title> </head> <body> <span tal:define="project python: container.sqlProjectDataById[p_id]"> <span metal:fill-slot="description" tal:content="project/description">Description goes here</span>
This bit looks problematic to me. Your 'tal:define' is in the macro use, but not in a slot, so it's going to get stomped on unless it also occurs in the macro definition. You could do either of the following, if that's the case: <tal:x define="global project python:container.sqlProjectDataById[p_id]" /> <html metal:use-macro="here/master.html/macros/portfolio"> <head> <title tal:content="template/title">The Title</title> </head> <body> <span metal:fill-slot="description" tal:content="project/description">Description goes here</span> ..or.. <html metal:use-macro="here/master.html/macros/portfolio"> <head> <title tal:content="template/title">The Title</title> </head> <body> <span metal:fill-slot="description" tal:define="global project python:container.sqlProjectDataById[p_id]" tal:content="project/description">Description goes here</span> In either case, the 'global' will ensure that the variable is defined through all of the slots. Cheers, Evan @ 4-am