目前,我在models.py中有这个方法
def charge(self, amount):
self.balance = (self.balance - Decimal(amount))
self.save()
当新请求传入时,我检查该用户是否有当前余额>;=price这样我就可以做objectRow.charge(price)问题是当我收到1000个请求到同一个ID时,我的余额是-000,用户最终欠我钱,这不是重点
这是我目前的确认
accountObject = account.objects.get(auth_token=auth_token)
if accountObject.balance >= settings.MT_COST:
# Save
ProductObject = product(application=applicationObject,
account=accountObject,
cost=settings.MT_COST,
direction=2,
status_log=1,
product=product_id,
ip_address=ip_address)
ProductObject.save()
# Charge User
ProductObject.charge(settings.MT_COST)
data = {'status': "ok"}
return HttpResponse(json.dumps(data), content_type='application/json', status=200)
# Not enough Balance
else:
data = {'status': "error"}
return HttpResponse(json.dumps(data), content_type='application/json', status=406)
目前没有回答
相关问题 更多 >
编程相关推荐