django-tagging probleme mit modelformset_factory()
Verfasst: Donnerstag 3. Dezember 2009, 15:42
Ich habe gerade den "bulk editor" in PyLucid fertig gestellt: http://trac.pylucid.net/changeset/2473
Ich erstelle eine formset mit modelformset_factory() nun habe ich gerade gemerkt, das z.B. ein django-tagging field nicht richtig gespeichert wird und bin darüber gestolpert:
Wenn ich aber ein formset.save_m2m() einfüge, gibt es ein AttributeError, weil die generierte FormSet keine save_m2m Methode hat. Sollte sie das nicht automatisch???
Das geht auch nicht:
und das auch nicht:
Der Fehler ist immer der selbe: Es gibt halt keine save_m2m() Methode.
Muß ich wirklich selber Hand anlegen und mit django.forms.models.save_instance arbeiten???
EDIT: Auch das geht nicht:
Es kommt zwar zu keinem Fehler, aber m2m werte sind dennoch nicht korrekt gespeichert 
EDIT2: Der "Bulk Editor" ist das hier:

Volle Auflösung: http://www.flickr.com/photos/jensdiemer ... 8/sizes/o/
Ich erstelle eine formset mit modelformset_factory() nun habe ich gerade gemerkt, das z.B. ein django-tagging field nicht richtig gespeichert wird und bin darüber gestolpert:
von: http://docs.djangoproject.com/en/dev/to ... forms/#id2If your formset contains a ManyToManyField, you'll also need to call formset.save_m2m() to ensure the many-to-many relationships are saved properly.
Wenn ich aber ein formset.save_m2m() einfüge, gibt es ein AttributeError, weil die generierte FormSet keine save_m2m Methode hat. Sollte sie das nicht automatisch???
Das geht auch nicht:
Code: Alles auswählen
for form in formset.forms:
if form.has_changed():
form.save_m2m()
Code: Alles auswählen
saved_items = formset.save(commit=False)
for instance in saved_items:
instance.save()
instance.save_m2m()
Muß ich wirklich selber Hand anlegen und mit django.forms.models.save_instance arbeiten???
EDIT: Auch das geht nicht:
Code: Alles auswählen
saved_items = formset.save(commit=False)
from django.forms.models import save_instance
for form, instance in zip(formset.forms, saved_items):
save_instance(form, instance)

EDIT2: Der "Bulk Editor" ist das hier:

Volle Auflösung: http://www.flickr.com/photos/jensdiemer ... 8/sizes/o/