¿Hay alguna idea de que puedo poner etiqueta de cierre (/>) en la etiqueta de entrada de texto HTML en el procesamiento de formularios de Django?

votos
0

// aquí es la forma de código de Django

<form method=post novalidate>
  {% csrf_token %}
  {{ form }}
  <button type=submit>Submit</button>
</form>

// ahora la forma se representa como

<input type=text name=phone_email required id=id_phone_email>
 <input type=text name=full_name required id=id_full_name>

// ahora este código html no tiene ninguna etiqueta de cierre campo de entrada (/>) cualquier estoy siendo capaz de ejecutar el código JSX debido a la ausencia de cerrar idea tag.any de entrada ¿cómo puedo poner etiqueta de cierre (/>) en Django ??

Publicado el 19/12/2018 a las 14:11
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
2

Para anular cómo una forma representa el HTML por sus campos de entrada, se puede crear un widget de formulario personalizado.

from django.forms.widgets import Input

class JSXInput(Input):
    template_name = 'myapp/widgets/jsxinput.html'

Y añadir este widget a tu campo de formulario:

class MyForm(Form):
    full_name = forms.CharField(widget=JSXInput)

A continuación, puede cuna fuera de la django/forms/widgets/input.htmlplantilla en el django.forms.templatesmódulo y agregar su llave de cierre.

<input type="{{ widget.type }}" .... />

Esto fue para Django 2, pero IIRC es bastante similar en 1,11.

Sin embargo , usted debe preguntarse si es o no su código JSX se dictarán por Django, o en su lugar ser un activo estático que luego habla con un API REST Django.

Respondida el 19/12/2018 a las 14:39
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more