django - django-taggit form

8

Ich möchte django-taggit ( hier klicken ) verwenden. Die Dokumentation ( hier klicken ) spricht über die Verwendung von ModelForm für erzeuge das Formular aber ich habe schon mein Formular das ich gerne benutzen möchte.

Sagen wir, wenn ich so etwas habe:

forms.py

%Vor%

Wie speichere ich die Tags aus dem Feld tags ? Was geht in meinem views.py ? Ein echtes Beispiel wäre wirklich geschätzt.

    
avatar 19.03.2011, 02:48
quelle

3 Antworten

12

Ich bin mit der django-Taggit-App nicht sehr vertraut, aber es sieht so aus, als ob Sie das gleiche Feld und Widget-Setup der App verwenden möchten, Sie können sie aus den taggit.forms importieren ( https://github.com/alex/django-taggit/blob/master/taggit/forms.py ):

Ihre models.py:

%Vor%

Ihre forms.py

%Vor%

Das TagField gibt die verarbeitete Eingabe mit der Methode parse_tags aus utils.py in der Taggit-App zurück. Die Rückgabe scheint eine aufgeräumte Liste zu sein (set (words))

Ihre views.py

%Vor%     
DTing 19.03.2011, 10:23
quelle
7

Ich kann die verwendete / "grüne" Antwort nicht kommentieren. Aber ich würde den Block

ändern %Vor%

bis

%Vor%     
seb 23.12.2011 01:34
quelle
3

Siehe Anweisungen hier: Ссылка

Wenn Sie beim Speichern eines Formulars die Option commit=False verwenden, müssen Sie sie aufrufen save_m2m() auf dem Formular, nachdem Sie das Objekt gespeichert haben, genauso wie Sie es bei einem form mit normal vielen bis vielen feldern darauf ::

%Vor%     
a.m. 07.04.2012 15:44
quelle