这是我的models.py文件
class ProductPage(models.Model):
item=models.CharField(max_length=100)
price=models.IntegerField(null=True, blank=True)
@property
def price_tag(self):
if price>=100000 or price<=9999999:
price=price//100000
return self.str(price)+ 'lac'
我的view.py文件。
def产品(请求(:
object1=ProductPage.objects.all()
return render(request,'item.html',{'object1':object1})
和index.html文件:
{% for i in object1 %}
<tr>
<td>{{i.id}}</td>
<td>{{i.item}}</td>
<td>{{i.price_tag}}</td>
{% endfor%}
在我的管理面板价格是整数字段的形式,即10000。我想在显示页面上将其转换为"1 lac"形式(请参阅印度编号系统(。如何做到这一点?
推荐读数,推荐读数2
推荐在做更多Django 之前
变量price
将解析为模型上的字段声明。这不是OOP和Django中的工作方式。总共有4个错误,全部更正如下。试着找出原因:
class Product(models.Model):
item=models.CharField(max_length=100)
price=models.IntegerField(null=True, blank=True)
@property
def price_tag(self):
if self.price>=100000 and price<=9999999:
price=price//100000
return f"{self.price}lac"
return str(self.price) if self.price is not None else ""