Как использовать входы для выполнения вычислений с помощью математических фильтров в Django?
Я использую mathfilters в Django, я хочу сделать умножение между количеством и ценой_единицы и отразить это в total_price. Я уже следовал документации отсюда mathfilters и при реализации, как там написано, и заполнении этих 2 входов числами, результат нигде не отражается
Возможно, я не очень хорошо реализую это, но когда я ищу, я вижу, что очень мало информации по использованию математических фильтров
<td>
{{presupuestosparteform.quantity}}
</td>
<td>
{{presupuestosparteform.unit_price}}
</td>
<td>
<li>{{ presupuestosparteform.quantity|mul:presupuestosparteform.unit_price }}</li>
</td>
Приложите файл просмотра
Вы используете django-mathfilter правильным образом. Я думаю, что должна быть какая-то проблема с вашими значениями, которые вы предоставляете там
- проверьте тип
{presupuestosparteform.quantity}
иpresupuestosparteform.unit_price
.
- значение
presupuestosparteform.unit_price
иpresupuestosparteform.unit_price
должно быть типа int или float . - проверьте версию python должна быть
Python 3.5+
.
Я рекомендую использовать модель @property. Это позволит вам при необходимости произвести дальнейшие расчеты, например, вычесть скидки и т.д. Просто добавьте следующее свойство непосредственно к вашей модели:
@property
def total_price(self):
return self.quantity * self.unit_price