[Zope] Q: Namespace, Acquisition, and Properties
Wilkinson Charlie E
Charlie.E.Wilkinson@irs.gov
Mon, 5 Jun 2000 11:29:00 -0400
This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.
------_=_NextPart_000_01BFCF02.C73DF978
Content-Type: multipart/alternative;
boundary="----_=_NextPart_001_01BFCF02.C73DF978"
------_=_NextPart_001_01BFCF02.C73DF978
Content-Type: text/plain;
charset="iso-8859-1"
Greetings,
I've dug around, but not found (or not grokked) the solution to this
particular puzzle. Could someone more knowledgeable provide a little
enlightenment?
In the top level folder (root) I have a dtml method title template
that contains html code and dtml vars that are (intended to be)
populated by properties of various subfolders as well as a value or
two passed directly. The title template is "called" from dtml
methods in the root and sub-folders using something like:
<dtml-var "title_block(app_screen = 'Main Screen')">
I have no problem getting at the title template from any of the dtml
methods. (Thanks to acquistion, yes?)
However, I get Zope KeyErrors indicating that the title template is
not seeing the sub-folder properties in its namespace, when I plug
the above code into a dtml method contained in one of those sub-
folders. Here's the title_block code:
<CENTER>
<table border=1
<dtml-if "_.has_key('titleblock_bg')">
bgcolor="<dtml-var titleblock_bg>"
<dtml-else>
bgcolor="#111155"
</dtml-if>
>
<TR><TD align=center>
<FONT size=7
<dtml-if "_.has_key('title_fg')">
color="<dtml-var title_fg>"
<dtml-else>
color="#009900"
</dtml-if>
><dtml-var app_title></FONT><BR>
<FONT size=4
<dtml-if "_.has_key('subt_fg')">
color="<dtml-var subt_fg>"
<dtml-else>
color="#009900"
</dtml-if>
><dtml-var app_subt></FONT><HR>
<FONT size=5
<dtml-if "_.has_key('screen_fg')">
color="<dtml-var screen_fg>"
<dtml-else>
color="#009900"
</dtml-if>
><dtml-var app_screen></FONT>
</TD></TR>
</TABLE>
</CENTER>
(Ok, try not to laugh too hard - I'm Zope newbie...)
Some values above are optional (the has_key stuff). Values like
app_screen may be passed explicitly as literals. The rest (like
app_title) was intended to be grabbed from the folder/sub-folder
properties I set up for that purpose.
So, two questions:
1. Is there a simple way to pass the appropriate sub-folder
properties namespace from a dtml method contained in that sub-folder
to the title_block dtml method contained in the root folder? An
example would be tremendously helpful.
2. Is there a better way to do what I'm trying to do?
Thanks for any help,
Charlie
--
Charlie Wilkinson - TRIS Development Systems Administrator
IS:SD:CT:CC:TD
Phone: 202-283-3241
MSMail: <mailto:Charlie E Wilkinson> Charlie E Wilkinson
SMTP: <mailto:cwilkins@tris.irs.gov> cwilkins@tris.irs.gov
Home: <outbind://7/cwilkins@boinklabs.com> cwilkins@boinklabs.com
This message constructed from 90% post-consumer electrons.
------_=_NextPart_001_01BFCF02.C73DF978
Content-Type: text/html;
charset="iso-8859-1"
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>Clear Day</TITLE>
<STYLE>BODY {
COLOR: #0033cc; FONT-FAMILY: Arial, Helvetica; FONT-SIZE: 10pt; MARGIN-LEFT: 10px; MARGIN-TOP: 25px
}
</STYLE>
<META content="MSHTML 5.00.3017.1000" name=GENERATOR></HEAD>
<BODY background=cid:070312715@05062000-04f8>
<DIV><SPAN class=070312715-05062000>Greetings,</SPAN></DIV>
<DIV>I've dug around, but not found (or not grokked) the solution to
this<BR>particular puzzle. Could someone more knowledgeable provide a
little<BR>enlightenment?</DIV>
<DIV> </DIV>
<DIV>In the top level folder (root) I have a dtml method title template<BR>that
contains html code and dtml vars that are (intended to be)<BR>populated by
properties of various subfolders as well as a value or<BR>two passed
directly. The title template is "called" from dtml<BR>methods in the root
and sub-folders using something like:</DIV>
<DIV> </DIV>
<DIV><dtml-var "title_block(app_screen = 'Main Screen')"></DIV>
<DIV> </DIV>
<DIV>I have no problem getting at the title template from any of the
dtml<BR>methods. (Thanks to acquistion, yes?)</DIV>
<DIV> </DIV>
<DIV>However, I get Zope KeyErrors indicating that the title template is<BR>not
seeing the sub-folder properties in its namespace, when I plug<BR>the above code
into a dtml method contained in one of those sub-<BR>folders. Here's the
title_block code:</DIV>
<DIV> </DIV>
<DIV><CENTER><BR><table border=1<BR><dtml-if
"_.has_key('titleblock_bg')"><BR> bgcolor="<dtml-var
titleblock_bg>"<BR><dtml-else><BR>
bgcolor="#111155"<BR></dtml-if><BR>><BR><TR><TD
align=center><BR> <FONT
size=7<BR><dtml-if "_.has_key('title_fg')"><BR> color="<dtml-var
title_fg>"<BR><dtml-else><BR>
color="#009900"<BR></dtml-if><BR>><dtml-var
app_title></FONT><BR><BR>
<FONT size=4<BR><dtml-if "_.has_key('subt_fg')"><BR>
color="<dtml-var subt_fg>"<BR><dtml-else><BR>
color="#009900"<BR></dtml-if><BR>><dtml-var
app_subt></FONT><HR><BR>
<FONT size=5<BR><dtml-if "_.has_key('screen_fg')"><BR>
color="<dtml-var screen_fg>"<BR><dtml-else><BR>
color="#009900"<BR></dtml-if><BR>><dtml-var
app_screen></FONT><BR></TD></TR><BR></TABLE><BR></CENTER></DIV>
<DIV> </DIV>
<DIV>(Ok, try not to laugh too hard - I'm Zope newbie...)</DIV>
<DIV> </DIV>
<DIV>Some values above are optional (the has_key stuff). Values
like<BR>app_screen may be passed explicitly as literals. The rest
(like<BR>app_title) was intended to be grabbed from the
folder/sub-folder<BR>properties I set up for that purpose.</DIV>
<DIV> </DIV>
<DIV>So, two questions:</DIV>
<DIV> </DIV>
<DIV>1. Is there a simple way to pass the appropriate sub-folder<BR>properties
namespace from a dtml method contained in that sub-folder<BR>to the title_block
dtml method contained in the root folder? An<BR>example would be
tremendously helpful.</DIV>
<DIV> </DIV>
<DIV>2. Is there a better way to do what I'm trying to do?<BR><BR>Thanks for any
help,<BR>
Charlie<BR></DIV><FONT face=HE_TERMINAL>--</FONT> <BR><FONT
face=HE_TERMINAL>Charlie Wilkinson - TRIS Development Systems
Administrator</FONT> <BR><FONT face=HE_TERMINAL>IS:SD:CT:CC:TD</FONT><BR><FONT
face=HE_TERMINAL>Phone: 202-283-3241</FONT> <BR><FONT
face=HE_TERMINAL>MSMail: </FONT><A
href="mailto:Charlie E Wilkinson"><FONT face=HE_TERMINAL>Charlie E
Wilkinson</FONT></A> <BR><FONT face=HE_TERMINAL>SMTP: </FONT><A
href="mailto:cwilkins@tris.irs.gov"><FONT
face=HE_TERMINAL>cwilkins@tris.irs.gov</FONT></A> <BR><FONT
face=HE_TERMINAL>Home: </FONT><A
href="outbind://7/cwilkins@boinklabs.com"><FONT
face=HE_TERMINAL>cwilkins@boinklabs.com</FONT></A> <BR><FONT
face=HE_TERMINAL>This message constructed from 90% post-consumer
electrons.</FONT>
<P> </P></BODY></HTML>
------_=_NextPart_001_01BFCF02.C73DF978--
------_=_NextPart_000_01BFCF02.C73DF978
Content-Type: image/jpeg;
name="Clear Day Bkgrd.JPG"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="Clear Day Bkgrd.JPG"
Content-ID: <070312715@05062000-04f8>
/9j/4AAQSkZJRgABAgEASABIAAD/7QVoUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQABOEJJTQPzAAAAAAAIAAAAAAAAAAA4QklNBAoAAAAAAAEAADhCSU0nEAAAAAAACgAB
AAAAAAAAAAI4QklNA/UAAAAAAEgAL2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEA
MgAAAAEAWgAAAAYAAAAAAAEANQAAAAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP//////////
//////////////////8D6AAAAAD/////////////////////////////A+gAAAAA////////////
/////////////////wPoAAAAAP////////////////////////////8D6AAAOEJJTQQIAAAAAAAQ
AAAAAQAAAkAAAAJAAAAAADhCSU0ECQAAAAAD9wAAAAEAAACAAAAAgAAAAYAAAMAAAAAD2wAYAAH/
2P/gABBKRklGAAECAQBIAEgAAP/+ACdGaWxlIHdyaXR0ZW4gYnkgQWRvYmUgUGhvdG9zaG9wqCA0
LjAA/+4ADkFkb2JlAGSAAAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMTGBEMDAwM
DAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4ODhQRDAwM
DAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAgACAAwEiAAIRAQMR
Af/dAAQACP/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGhsUIjJBVS
wWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0lcTU5PSl
tcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhEDITESBEFR
YXEiEwUygZEUobFCI8FS0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdkRVU2dGXi8rOE
w9N14/NGlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwDAQACEQMRAD8A
9LSS7JlWLMolMkkmpXSTpIqUnCinCQQySTSknWilJkpSQtKxSlJJBKk6ZOkFP//Q9LlJMnVZmVCY
qRUUCpSRKUpkErSpBRhOkClkCkmCcJ1rVQmUk0JKUm7p0kEqSTSkUrU//9H0kKQUU8qoCzlclRTy
opEqC6SSSSVwlokkihScJAJwEgEKCRTpiE6lLJJJkFLJJJJq5//S9JTJ0ypthcJJkpSUukklqipS
kmhSARAQVBJOE6ctWCdJIooYlRKkSok6ppXBSRSCcodEv//T9JSSThVGwxITKZTQhSrUE6QCdOCC
uEkySKF5Ugop0QgrpikSokokqCxTKSaEwrlBP8Eyfskh/9T0lSUSkCVUZ2SSYKSKFkkkgipSSdMU
lLpFMmJStVLykmlOhaVJJAJ4RQslKSZBL//V9JTwkkqjOunUU4KchSQTpJKWJSTEppQtNLkpkk8I
bqUAnSTIqZJSmSRQsmUlEoFIf//W9KCSSdVWdZIJQkkplKZNKSNopc6qMKSZBKycFOkB4pUq1JJ4
CUI0i1kydMUClUpkkkEv/9kAOEJJTQQGAAAAAAAHAAMAAAABAQD//gAnRmlsZSB3cml0dGVuIGJ5
IEFkb2JlIFBob3Rvc2hvcKggNC4wAP/uAA5BZG9iZQBkAAAAAAH/2wCEAAoHBwcIBwoICAoPCggK
DxINCgoNEhQQEBIQEBQRDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBCwwMFRMV
IhgYIhQODg4UFA4ODg4UEQwMDAwMEREMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM
DP/AABEIASwBLAMBEQACEQEDEQH/3QAEACb/xAGiAAAABwEBAQEBAAAAAAAAAAAEBQMCBgEABwgJ
CgsBAAICAwEBAQEBAAAAAAAAAAEAAgMEBQYHCAkKCxAAAgEDAwIEAgYHAwQCBgJzAQIDEQQABSES
MUFRBhNhInGBFDKRoQcVsUIjwVLR4TMWYvAkcoLxJUM0U5KismNzwjVEJ5OjszYXVGR0w9LiCCaD
CQoYGYSURUaktFbTVSga8uPzxNTk9GV1hZWltcXV5fVmdoaWprbG1ub2N0dXZ3eHl6e3x9fn9zhI
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
------_=_NextPart_000_01BFCF02.C73DF978--