ToscaWidgets - настроить форму
Я использую https://pypi.python.org/pypi/tgapp-resetpassword/0.1.5 который позволяет вам переопределить шаблон, используемый для страницы сброса пароля. К сожалению, сама форма включена в "черный ящик":
<div>
${reset_password_form.display(action=action)}
</div>
Форма была определена как tw2.forms.TableForm
это не то, что я хотел бы показать. Можно ли иметь более точный контроль зерна, например, вставлять пользовательский HTML-код вокруг каждого из полей или быть более четким о том, как отображать определенные поля?
Например, я хотел бы сделать что-то вроде следующего (составленного):
<div>
<form ${reset_password_form.attrs} class="my-own-class-name">
<py:for each="field in reset_password_form.fields">
<div class="custom-class-here">
<label for="${field.id}">
... some logic to possibly override default label else...
${field.default_label_text}
</label>
${field.render_as_input_field()}
</div>
</py:for>
<button type="submit">My own submit text</button>
<form>
</div>
Возможен ли этот уровень настройки с помощью ToscaWidgets без переопределения вещей в Python?
1 ответ
Как по документации возврата пароля у вас есть reset_password.reset_password_form
опция, которую можно использовать для указания альтернативной формы tw2.
Вам просто нужно поместить туда путь Python (как "resetpassword.lib.forms.ResetPasswordForm"
) формы, которую вы хотели бы использовать вместо формы по умолчанию.
Затем в вашей собственной форме можно указать собственный шаблон, например https://gist.github.com/amol-/d2a08027d34a8c4dfa69