Как найти способ для непрерывного цикла? используя django?
новая цена - это цена, взятая из marketcapapi. Я бы хотел, чтобы каждый раз, когда пользователь покупает монеты, монеты переводились в ALGO_кошелек, оставляя n_ALGO_coin равным нулю (= 0). В первый раз, когда пользователь покупает, все в порядке, перевод выполнен, а во второй раз данные остаются как в n_ALGO_coin, так и в ALGO_wallet. Я пробовал с помощью цикла for, но он говорит мне, что объект no interable
def buyalgomkt(request):
new_price = algoValue()
if request.method == "POST":
form = PurchaseForm(request.POST)
if form.is_valid():
form.save(commit=False)
profile = Profile.objects.get(user=request.user)
if profile.USD_wallet > 0 and form.instance.max_spend_usd < profile.USD_wallet:
form.instance.purchased_coin = form.instance.max_spend_usd / form.instance.price_mkt
profile.n_ALGO_coin += form.instance.purchased_coin
profile.USD_wallet -= form.instance.max_spend_usd
profile.ALGO_Wallet += profile.n_ALGO_coin
profile.n_ALGO_coin = profile.ALGO_Wallet - profile.n_ALGO_coin
form.save()
profile.save()
name = request.user
name.save()
messages.success(request, 'Your order has been placed and processed')
else:
messages.warning(request, 'You do not have enough money')
return redirect('purchase')
else:
return HttpResponseBadRequest()
else:
form = PurchaseForm()
return render(request, 'coinmarketalgo/purchase.html', {'form': form, 'new_price': new_price})
... что я могу сделать?
class Profile(models.Model):
_id = ObjectIdField()
user = models.ForeignKey(User, on_delete=models.CASCADE)
ips = models.Field(default=[])
subprofiles = models.Field(default={})
n = random.randint(1, 10)
n_ALGO_coin = models.FloatField(default=algoValue() * n)
ALGO_Wallet = models.FloatField(default=0)
purchased_coin = models.FloatField(default=0)
USD_wallet = models.FloatField(default=10000)
profit = models.FloatField(default=0)
class Purchase(models.Model):
_id = ObjectIdField()
max_spend_usd = models.FloatField(default=0)
user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='purchases')
price_mkt = models.FloatField(default=algoValue())
datetime = models.DateTimeField(auto_now_add=True)
purchased_coin = models.FloatField(default=0)
profile = models.ForeignKey(Profile, on_delete=models.CASCADE, related_name='profile')