EasyForm Execution Condition

I'm, trying to write a overrides Execution Condition on an email adapter.

If a user answer yes to any of three questions the email is sent.

how do I call the field name in my python override?

the problem is that to call a field in the overrides you have to use TALES and the field name data has dots in it. eg request/form.widgets.has_symptoms
If I try python: request.form.widgets.has_symptoms == 'Yes', I get a AttributeError("'dict' object has no attribute 'widgets'",)

python: request.get('form.widgets.has_symptoms') == 'Yes'

or

python: request.form.get('form.widgets.has_symptoms') == 'Yes'
1 Like

Thanks Andreas,
I did this before I saw your answer and this worked as well
python: request["form.widgets.has_symptoms"]== 'Yes'

which one is prefered?

Using get() is perhaps a bit more resilient...but same approach

Plone Foundation Code of Conduct