Django Отправка формы в длинном цикле
Я много чего перепробовал, теперь хочу спросить у вас. У пользователя есть несколько кнопок.
Моя цель - подсчитать каждое нажатие на определенную кнопку. Конкретная кнопка - это поле (модель поля). Как выглядят модели:
class Field(models.Model):
user = models.ForeignKey(
settings.AUTH_USER_MODEL,
default=None,
null=True,
on_delete=models.CASCADE,
)
description = models.CharField(max_length=255)
title = models.CharField(max_length=255)
url = models.CharField(max_length=255)
...
class Hits(models.Model):
field = models.OneToOneField(
Field, default=None, null=True, on_delete=models.CASCADE)
hits = models.IntegerField(default=0)
\\\\HTML шаблон
{% for i in request.user.field_set.all %} {% if request.user == i.user %}
<form method="POST">
{{ hits_form }}
{% csrf_token %}
<div class="full-w-button">
<p class="preview-description">{{ i.description }}</p>
<button onClick="javascript:window.open('{{i.url}}', '_blank');" type="submit" class="link-box">
<p class="text-bold-medium">{{ i.title }}</p>
</button>
</div>
</form>
{% endif %} {%endfor %}
Предполагается, что форма hits_form будет скрытым входом для подсчета кликов. Мои проблемы следующие: -когда пользователь нажимает на кнопку, счетчик для определенного поля += 1 -иметь форму для каждого поля, в настоящее время одна форма, вероятно, сохраняет счетчик для всех полей, поэтому я зацикливаюсь с формами, но каждая форма одна и та же
\\\views.py
In the Views File, the important parts is the hits_form, the other form works fine
if request.method == 'POST':
hits_form = #here i am stuck
form = FieldForm(request.POST, instance=Field(user=request.user))
if hits_form.is_valid():
# and here i am stuck
return redirect('/dashboard')
if form.is_valid():
time.sleep(1.5)
obj = form.save(commit=False)
obj.creator_adress = get_client_ip(request)
obj.save()
return redirect('/dashboard')
else:
form = FieldForm()
hits_form = HitsForm()
Спасибо за помощь :-)