Esempio n. 1
0
 def _save_the_instance(self, instance):
     for field in self.fields_to_disable_auto_now:
         disable_auto_now(field)
     for field in self.fields_to_disable_auto_now_add:
         disable_auto_now_add(field)
     instance.save()
     for field in self.fields_to_disable_auto_now:
         enable_auto_now(field)
     for field in self.fields_to_disable_auto_now_add:
         enable_auto_now_add(field)
Esempio n. 2
0
 def _save_the_instance(self, instance):
     for field in self.fields_to_disable_auto_now:
         disable_auto_now(field)
     for field in self.fields_to_disable_auto_now_add:
         disable_auto_now_add(field)
     instance.save()
     for field in self.fields_to_disable_auto_now:
         enable_auto_now(field)
     for field in self.fields_to_disable_auto_now_add:
         enable_auto_now_add(field)
Esempio n. 3
0
    def _save_the_instance(self, instance):
        for field in self.fields_to_disable_auto_now:
            disable_auto_now(field)
        for field in self.fields_to_disable_auto_now_add:
            disable_auto_now_add(field)
        try:
            instance.save()
        except Exception as e:
            unique_fields = [i for i in instance._meta.fields if i._unique]

            for unique_field in unique_fields:
                match = list(instance.__class__.objects.filter(**{unique_field.name: getattr(instance, unique_field.name)}))
                if match:
                    instance = match[0]
                    break

        for field in self.fields_to_disable_auto_now:
            enable_auto_now(field)
        for field in self.fields_to_disable_auto_now_add:
            enable_auto_now_add(field)
        return instance