Any way to suppress key errors when a dictionary key is not found in Chameleon ZPT templates?

339 Views Asked by At

Sometimes it would be nice to be able to do this, just return None in any expression evaluating for a nonexistent dict key instead of raising KeyError.

1

There are 1 best solutions below

0
Martijn Pieters On BEST ANSWER

You'd use dict.get() to access the key instead:

<div tal:attributes="class some_dict.get(some_key)">

where the class attribute would be omitted if some_key is not present, as the default return value from dict.get() is None if the key is missing.