[Zope] DTML namespace problem (was: dtml-tree issue)

Vangelis Mihalopoulos mihalop at vtrip.net
Tue Apr 12 05:39:48 EDT 2005


Just added    __allow_access_to_unprotected_subobjects__=1    as an 
attribute of my class defined in an external python script and it works 
fine.

Thanks Tino!


Tino Wildenhain wrote:

>Hi,
>
>Am Montag, den 11.04.2005, 14:08 +0300 schrieb Vangelis Mihalopoulos:
>  
>
>>Andreas Jung wrote:
>>
>>    
>>
>>>You should *not* define classes inside PythonScripts. PythonScripts 
>>>are stricted
>>>and don't provide the full functionality. Either use filesystem based 
>>>code (Zope
>>>Product) or use simple Python datatypes as dictionaries in this case.
>>>      
>>>
>>An External Method behaves exactly the same. I have not yet involved in 
>>writting even the simpler Product and i will not do it now for such a 
>>trivial issue.
>>
>>I tried to return a dictionary,
>>-----  return {'a':1, 'b':2, 'c':3}  ------
>>but it the DTML Doc fails with a KeyError.
>>    
>>
>
>Use a dict and if you really need DTML... see the keyword
>"mapping" for <dtml-with> and <dtml-in> tags.
>
>If you want to return custom class objects into untrusted
>code (e.g. from external methods) you need to set security
>declarations on them - at least add the attribute:
>
>__allow_access_to_unprotected_subobjects=1 
>
>(from top of head - just grep -r zopes source
>for the actual name)
>
>HTH
>Tino
>  
>


More information about the Zope mailing list