Pregunta

Me gustaría crear una tabla con varias columnas que muestren datos existentes y una columna que contenga un cuadro de texto donde pueda ingresar datos.

Cuando uso mi modelo "Animal" en mi form.py, veo cuadros de entrada.Sin embargo, cuando uso el mismo modelo en mis tablas.py, veo un '--' (guiones) en lugar de los cuadros de entrada.

Mis modelos.py:

class Animal(models.Model):
    specie = models.CharField(max_length=20)
    count = models.CharField(max_length=20)

mis formularios.py:

class AnimalForm(forms.ModelForm):
    class Meta:
        model = Animal

mis tablas.py:

class AnimalTable(tables.Table):
    class Meta:
        model = Animal

Incluso intenté especificar manualmente un cuadro de texto, pero eso no ayudó:

class AnimalTable(tables.Table):
    count = forms.Textarea()
    class Meta:
        model = Animal

¿Cómo se crearía un cuadro de entrada dentro de una tabla django-tables2?

¿Fue útil?

Solución

Encontré una solución utilizable aquí .

TEMPLATE = """
<input id="count" maxlength="100" name="count" type="text"/>
"""
class AnimalTable(tables.Table):
    count = tables.TemplateColumn(TEMPLATE)
    class Meta:
        model = Animal

Espero que esto también sea útil para los demás.

Otros consejos

Creo que es posible que hayas entendido mal el concepto de django-tables2 paquete.Su propósito es mostrar datos tabulares con la capacidad de ordenarlos y algunas otras cosas de formato.Entonces simplemente no puedes agregar campos de formulario tables.Table clase, porque espera columnas.

La lista de columnas admitidas está disponible en la documentación aquí: http://django-tables2.readthedocs.org/en/latest/#built-in-columns

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top