Атрибут TAL - если переменная атрибута - ничто, вместо этого поместите «this» - PullRequest
2 голосов
/ 28 января 2012

У меня проблемы с необязательным атрибутом tal.

<tal:block define="y_width options/youtube_width | nothing;">

  <div width="437" tal:attributes="width y_width | string:600;"></div>

</tal:block>

Я хочу сохранить его так, чтобы, если пользователь не вводил какие-либо параметры в значение ширины, он по умолчанию был равен 437. Я думал, что могу изменить оператор «или ничего» в блоке определения, но это не работает , Выше я попробовал поставить атрибут или после атрибута, но в любом случае оправдания кода исчезают. Как сделать так, чтобы, если пользовательские значения ввода были пустыми, в коде по умолчанию использовались определенные значения?

1 Ответ

2 голосов
/ 28 января 2012

Вы должны будете использовать выражение Python здесь, так как оператор | pipe только включает AttributeError или KeyError, но в вашем случае "y_width" будет None:

<tal:block define="y_width options/youtube_width | nothing;">

  <div width="437" tal:attributes="width python:y_width or 600;" ></div>

</tal:block>
...