Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

TAL incompatible repeat options #70

Closed
projekt01 opened this Issue Oct 29, 2011 · 8 comments

Comments

Projects
None yet
2 participants

z3c.pt and chameleon are not fully compatible right now ith TAL. Traversing the repeat wrapper is not done the same way. ZPT uses the following pattern:

<tal:block condition="not:repeat/value/end">, </tal:block>

Chameleon only supports python style traversing at the moment:
<tal:block condition="not:python:repeat['value'].end">, </tal:block>

This is a problem in z3c.form select display widget template,
z3c/form/browser/select_diplay.pt

Versions:
Chameleon 2.0 and up, related z3c.pt versions

Owner

malthe commented Jan 9, 2012

I'm not exactly sure what this issue is about. Is there a lack of traversing capability in the repeat object for native Zope-apps?

If the tal expression for batching start/end in chameleon doesn't use the same pattern then TAL uses. This means
that existing page templates don't work without to change them.

See the select_display.pt template in z3c.form:
http://svn.zope.org/repos/main/z3c.form/trunk/src/z3c/form/browser/select_display.pt

Owner

malthe commented Jan 9, 2012

Do you mean that path-traversal fails for the repeat-object?

I find that z3c.form tests pass, so I'm a bit confused here as to what the real issue is.

Probably this has to do with the word "value" and we where using another term for iterating? I just recognized in our project that after switching to chameleon the previous working page template with start/end iterator didn't work.

Owner

malthe commented Jan 9, 2012

It should be fine to use "value". It's just an entry in the dictionary after all.

Perhaps you could try and reproduce your issue in a failing test? That makes it perfectly clear at least, what's going on and what might be a wrong behavior.

Could it be that the iterable is not a dict? Is it possible that I've got an iterator instead and this iterable item had an attribute with the name value? I'll try to reproduce the issue again later...

Owner

malthe commented Oct 11, 2012

Is this still an issue?

Owner

malthe commented Dec 5, 2016

Closing the issue.

@malthe malthe closed this Dec 5, 2016

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment