当添加一篇博客的时候,希望博客数 +1,保存在Counts这样的字段中。这时我们就需要重写save_model方法,在保存模型时博客信息。

admin.py中会sava_model,如下。

class BlogAdmin(admin.ModelAdmin):
    def save_models(self, request, obj, form, change):
        obj.save()
        # 统计博客数目
        blog_nums = Blog.objects.count()
        count_nums = Counts.objects.get(id=1)
        count_nums.blog_nums = blog_nums
        count_nums.save()
        obj.save()

而xadmin.py中改为使用save_models。

class BlogAdmin(object):
    def save_models(self):
        obj = self.new_obj
        obj.save()
        # 统计博客数目
        blog_nums = Blog.objects.count()
        count_nums = Counts.objects.get(id=1)
        count_nums.blog_nums = blog_nums
        count_nums.save()
        obj.save()