Django:admin save_model()忽略save()

时间:2012-11-22 22:29:39

标签: django django-models django-admin

我正在使用django-mptt,我正在使用查询集来过滤查询集。

然后我想将电影添加到父类别

  • 媒体----------------- (在此处添加)
    • 电影------------- (保存后加入)
      • 行动-----(在此处添加电影)
      • 恐怖-----(或在这里,可能)
      • ...
    • ...

class FilmAdmin(BlunneAdmin):

    # FILTER RESULTS TO SHOW IN ADMIN
    def formfield_for_manytomany(self, db_field, request, **kwargs):
    if db_field.name == "categories":
        kwargs["queryset"] = Categ.objects.filter(parent__slug='films')
    return super(FilmAdmin, self).formfield_for_manytomany(db_field, request, **kwargs)

    # ADD FILM TO PARENT'S CATEGORIES
    def save_model(self, request, obj, form, change):
        obj.save()
        obj.categs.add(Categ.objects.get(slug='media'))
        obj.categs.add(Categ.objects.get(slug='films'))
        obj.save()

我该怎么做?

如果我没有放第一个save(),我收到了这个错误:

'电影'实例需要具有主键值才能使用多对多关系。

0 个答案:

没有答案