Tres Seaver <[EMAIL PROTECTED]> writes:

> yuppie wrote:
>> Hi!
>> Laurence Rowe wrote:
>>> yuppie wrote:
>>>> David Glick wrote:
>>>>> Does anyone have an objection to me adding 'context' as an alias for 
>>>>> 'object' in the expression context that is built when executing CMF 
>>>>> action expressions (in getExprContext in CMFCore/  This 
>>>>> would remove one common source of minor confusion for beginning 
>>>>> CMF/Plone developers (namely, having to use object in action expressions 
>>>>> when you use context everywhere else).
>>>> -1
>>>> "There should be one-- and preferably only one --obvious way to do it."
>>>> 'context' is deprecated for this kind of expressions, CMF uses 'object' 
>>>> everywhere. Supporting 'object' *and* 'context' or switching from 
>>>> 'object' to 'context' will cause even more confusion.
>>>> Please see this thread
>>>>>>> with 
>>>> this result
>>>>>> That 
>>>> thread refers to 'content' rather than 'context'.
>> The links to the thread were not meant as a contribution to the 
>> discussion if 'context' is better than 'object'. My point is that this 
>> was discussed before and that using 'object' was an explicit decision. 
>> (And 'context' was also considered: 
>> )
>>> Page templates have already made 'context' available as an alternative 
>>> to 'here'. I don't see why 'object' should be treated any differently.
>>> "There should be one-- and preferably only one --obvious way to do it."
>> The proposal was to *add* an alias. That means two ways to do it. It 
>> makes the chance higher that you guess the right name, but it doesn't 
>> make things more obvious.
> 'context' is the canonical name for the object through which a script or
> templated was acquired (its aq_parent, in fact);  'here' is a
> long-deprecated alias for 'context'.  'context' is like the 'self'
> binding of a normal Python method.
> Action expressions aren't scripts / templates, and don't have many of
> the stock names ('context', 'container', 'template', 'script',
> 'traverse_subpath', 'namespace', 'subpath', 'options', 'modules',
> 'root') which scripts and templates offer;  instead, they offer names
> which are useful in writing action URLs (e.g., 'object_url',
> 'folder_url', 'portal', 'user_id', etc.)  Their 'self' / 'context' would
> logically be the ActionInformation object, rather than the "target" for
> which the URL / condition is being computed.

Well, isn't a view instance object very much like an ActionInformation
object in this sense?  In TALES expressions in a view, "context" doesn't
refer to the view object.


Zope-CMF maillist  -

See for bug reports and feature requests

Reply via email to