我怎么知道transaction.atomic()正在工作

时间:2019-11-15 10:54:15

标签: django python-2.7

我正在使用transaction.atomic,但我不确信它正在批量生产

代码在下面

#this gets the data to save\update
writer = csv.writer(output)
try:
    with transaction.atomic():
        counter = 0
        for row in csv.reader(input):
            get_record = MyModel.objects.get(ISBN=data_dict['ISBN'], source=data_source)
            get_record.name="new value"                        
            get_record.save()
            print counter
        counter = counter + 1
except IntegrityError:
    print "Something went wrong"

class MyModel(models.Model):
    def save(self, *args, **kwargs):
        ''' On save, update timestamps '''
        if not self.id:
            self.created = timezone.now()
        self.modified = timezone.now()
        try:
            save_this = super(ImportHcstock, self).save(*args, **kwargs)
            print "Saving ok"
        except:
            save_this = "fail"
            print "Saving fail"
        return save_this

这可以正确保存数据,但是当我运行它时,如果我希望看到没有短语“ Saving OK”的数字,则计数器值和“ Saving OK”会彼此相邻。

我想念这个吗?

谢谢

赠予

0 个答案:

没有答案