django-tables2:Erstellen Sie ein Eingabetextfeld
-
26-12-2019 - |
Frage
Ich möchte eine Tabelle mit mehreren Spalten erstellen, die vorhandene Daten anzeigen, und einer Spalte, die ein Textfeld enthält, in das ich Daten eingeben kann.
Wenn ich mein „Animal“-Modell in meiner Forms.py verwende, sehe ich Eingabefelder.Wenn ich jedoch dasselbe Modell in meiner tables.py verwende, sehe ich ein „--“ (Bindestriche) anstelle der Eingabefelder.
Meine Modelle.py:
class Animal(models.Model):
specie = models.CharField(max_length=20)
count = models.CharField(max_length=20)
meine Formen.py:
class AnimalForm(forms.ModelForm):
class Meta:
model = Animal
meine Tabellen.py:
class AnimalTable(tables.Table):
class Meta:
model = Animal
Ich habe sogar versucht, manuell ein Textfeld anzugeben, aber das hat nicht geholfen:
class AnimalTable(tables.Table):
count = forms.Textarea()
class Meta:
model = Animal
Wie würde man ein Eingabefeld in einer Django-tables2-Tabelle erstellen?
Lösung
Ich habe eine nutzbare Lösung gefunden hier .
generasacodicetagpre.Ich hoffe, dass dies auch hilfreich für andere erweist.
Andere Tipps
Ich denke, Sie haben das Konzept möglicherweise falsch verstanden django-tables2
Paket.Sein Zweck ist die Anzeige tabellarischer Daten mit der Möglichkeit, sie zu sortieren und einige andere Formatierungselemente zu verwenden.Sie können also einfach keine Formularfelder hinzufügen tables.Table
Klasse, da sie Spalten erwartet.
Die Liste der unterstützten Spalten finden Sie in der Dokumentation hier: http://django-tables2.readthedocs.org/en/latest/#built-in-columns