我正在使用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”会彼此相邻。
我想念这个吗?
谢谢
赠予