示例#1
0
 def delete_models(self, queryset):
     n = queryset.count()
     if n:
         if self.delete_models_batch:
             queryset.delete()
         else:
             for obj in queryset:
                 obj.delete()
         self.message_user(_("Successfully deleted %(count)d %(items)s.") % {
             "count": n, "items": model_ngettext(self.opts, n)
         }, 'success')
示例#2
0
    def change_models(self, queryset, cleaned_data):
        n = queryset.count()

        data = {}
        for f in self.opts.fields:
            if not f.editable or isinstance(f, models.AutoField) \
                    or not f.name in cleaned_data:
                continue
            data[f] = cleaned_data[f.name]

        if n:
            for obj in queryset:
                for f, v in data.items():
                    f.save_form_data(obj, v)
                obj.save()
            self.message_user(_("Successfully change %(count)d %(items)s.") % {
                "count": n, "items": model_ngettext(self.opts, n)
            }, 'success')