Mdj*_*n26 3 django format class admin
我怎样才能让它在我的价格变量下我可以自动显示一个 $?因此,它将显示 $999.99,而不是 999.99。我在 Django Admin 中这样做。
这是 admin.py
from django.contrib import admin
from purchaseorders.models import PurchaseOrder
class PurchaseOrderAdmin(admin.ModelAdmin):
fields = ['product', 'price', 'purchase_date', 'confirmed']
list_display = ('product', 'price', 'purchase_date', 'confirmed', 'po_number')
admin.site.register(PurchaseOrder, PurchaseOrderAdmin)
Run Code Online (Sandbox Code Playgroud)
这是来自models.py的一点
from django.db import models
import random
class PurchaseOrder(models.Model):
price = models.FloatField()
Run Code Online (Sandbox Code Playgroud)
您可以通过以下几种方式做到这一点:
在中添加自定义属性 PurchaseOrder
class PurchaseOrder(models.Model):
price = models.FloatField()
@property
def dollar_amount(self):
return "$%s" % self.price if self.price else ""
Run Code Online (Sandbox Code Playgroud)
和参考dollar_amount而不是price
其它的办法
将其添加到 PurchaseOrderAdmin
class PurchaseOrderAdmin(admin.ModelAdmin):
fields = ['product', 'price', 'purchase_date', 'confirmed']
list_display = ('product', 'dollar_amount', 'purchase_date', 'confirmed', 'po_number')
def dollar_amount(self, obj):
return "$%s" % obj.price if obj.price else ""
admin.site.register(PurchaseOrder, PurchaseOrderAdmin)
Run Code Online (Sandbox Code Playgroud)
我个人更喜欢选项 1,以便我们可以在必须对实际应用程序执行相同操作时重用代码。
| 归档时间: |
|
| 查看次数: |
997 次 |
| 最近记录: |