Как я могу вычислить значение из пользовательского ввода, которое не сохраняется в базе данных, и значение из базы данных, используя django
Я делаю сайт с подсчетом калорий в продуктах, поэтому мне нужно сделать такое действие. У меня есть разные объекты продуктов и для каждого - разное значение в поле "калорийность на 100 грамм". Поэтому я не знаю, как сделать расчет, не сохраняя его в базу данных, я уверен, что это легко, но я новичок, поэтому... Вот мой код:
views.py:
class CurrentProductView(FormView):
template_name = "cur_product.html"
form_class = ProductForm
success_url = reverse_lazy("product")
def form_valid(self, form):
obj = form.save(commit=False)
calc_value = (obj.cur_weight * obj.calories) / 100
return HttpResponse(calc_value)
forms.py:
class ProductForm(forms.ModelForm):
cur_weight = forms.IntegerField()
class Meta:
model = Product
fields = ["calories"]
models.py:
class Product(models.Model):
name = models.CharField(max_length=100)
calories = models.PositiveIntegerField() #calories per 100 gram
description = models.TextField(max_length=100, blank=True, null=True)
image = models.ImageField(blank=True, null=True)
html:
{% block content %}
<form method="post">
{% csrf_token %}
{{ form.cur_weight }}
<input type="submit" value="Count">
</form>
{% endblock %}