我有下一个型号:
class BaseModel(models.Model):
def admin_link(self):
url = reverse(
'admin:%s_%s_change' % (self._meta.app_label, self._meta.model_name), args=(self.pk, )
)
return '<a href="{url}">{name}</a>'.format(
url=url, id=str(self)
)
admin_link.allow_tags = True
admin_link.short_description = _('Admin Link')
class Account(BaseModel):
pass
class Order(BaseModel):
account = models.ForeignKey(
'base.Account', on_delete=models.DO_NOTHING, related_name='orders',
verbose_name=_('Account'), null=False
)
我为Order
模型创建了管理模型:
class OrderAdminModel(admin.ModelAdmin):
fieldsets = [
(_('Order'), {'fields': [
'account__admin_link',
]})
]
当我去订购更改页面时,我发现了错误:
FieldError at / admin / base / order / 1475d5d6-135f-454e-bec4-a801183dfc5f / change / 为订单指定的未知字段(account__admin_link)。检查字段/字段集/排除类OrderAdmin的属性。
我不想在不同的管理模型中编写许多相同的功能(我与Account模型有很多关系)。
我可以使用一个功能但是在字段和字段集中显示它吗?