javascript - pagina - install bootstrap python
Atributos personalizados para Flask WTForms (2)
Tendrá que usar un widget personalizado para este caso; Subclase del widget de su elección con:
class AngularJSTextInput(TextInput):
def __call__(self, field, **kwargs):
for key in list(kwargs):
if key.startswith(''ng_''):
kwargs[''ng-'' + key[3:]] = kwargs.pop(key)
return super(AngularJSTextInput, self).__call__(field, **kwargs)
Esto traduce cualquier argumento de palabra clave que comienza con ng_
a un argumento de palabra clave que comienza con ng-
, asegurando que se puedan agregar los atributos HTML correctos.
Use esto como un atributo de widget
en su campo:
class MyForm(Form):
name = StringField(u''Full Name'', widget=AngularJSTextInput())
y ahora puedes usar esta es tu plantilla con:
{{ form.name(placeholder="Name", ng_model=''NameModel'') }}
y los atributos se agregarán como placeholder="Name" ng-model="NameModel"
en el HTML renderizado:
<input id="name" name="name" ng-model="NameModel" placeholder="Name" type="text" value="">
Desarrollo el sitio web en Flask y AngularJS. Necesito enviar un formulario con AJAX usando AngularJS pero requiere un atributo personalizado para el campo de entrada. Por ejemplo, tengo un formulario en la plantilla de Jinja2:
<form method="post" action="/">
{{ form.hidden_tag() }}
{{ form.name(placeholder="Name") }}
</form>
Entonces, ¿cómo puedo agregar un atributo de AngularJS, digamos "ng-model" para mi campo "nombre"?
¡Gracias por tu ayuda!
{{ form.username(placeholder=''your name'', size=20, **{''ng-model'':''hello'', ''class'':''hello''}) }}
Pienso que es mejor