【发布时间】:2020-11-30 22:20:47
【问题描述】:
我有一个模型,我正在使用 @property 返回函数,但它给了我集合中的数据,我想要这个数据在一个带逗号的字符串中,请告诉我我该怎么做。
这是我的models.py 文件:
class ShippingAddress(models.Model):
customer = models.ForeignKey(Customer, on_delete=models.SET_NULL, blank=True, null=True)
order = models.ForeignKey(Order, on_delete=models.SET_NULL, blank=True, null=True)
address = models.CharField(max_length=200, null=True)
city = models.CharField(max_length=200, null=True)
state = models.CharField(max_length=200, null=True)
zipcode = models.CharField(max_length=200, null=True)
date_added = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.address
@property
def Address(self):
return str(self.address), str(self.state), str(self.zipcode)
这是我的admin.py 文件,我在哪里调用函数:
class ShippingAddressAdmin(admin.ModelAdmin):
list_display=['city','state','Address']
readonly_fields=['city','Address']
admin.site.register(ShippingAddress, ShippingAddressAdmin)
@property 函数的输出是这样的:
('House number-69, sector-55, Gurugram', 'Haryana', '122002')
【问题讨论】:
-
你返回一个字符串元组。你应该这样做:
return f'{self.address}, {self.state}, {self.zipcode}'
标签: python django django-models django-views django-admin