Как добавить процентное поле в модель в Django?
Я не знаю, как это сделать в моем models.py, поэтому, в основном, я хочу иметь возможность ввести число, скажем, 5 в поле формы или из панели администратора, и оно отображается как 5%
Я не знаю, возможно ли это, так что какую функцию мне использовать в моем models.py, я провел некоторые исследования, но они не помогли, помогите мне здесь.
Мой models.py выглядит следующим образом
Username = models.Charfield(max_length=100)
Percentage =
Так вот где я застрял
Django по умолчанию не имеет процентного поля, но вы можете архивировать эти вещи следующим образом
models.py
from django.db import models
class ProductModel(models.Model):
name= models.CharField(max_length=100)
og_price = models.IntegerField(null=True, blank=True)
sell_price = models.IntegerField(null=True, blank=True)
discount = models.IntegerField(blank=True, default=0)
discounted_price = models.IntegerField(blank=True, default=0)
@property
def discount_in_percentage(self):
return f"{self.discount} %"
@property
def discounted_price(self):
return ((self.og_price*self.discount)/100)
@property
def sell_price(self):
return ((self.og_price - self.discounted_price))
admin.py
@admin.register(ProductModel)
class ProductModelAdmin(admin.ModelAdmin):
list_display = ("discounted_price", "discount_in_percentage", "sell_price", "og_price", "name")[::-1]