我使用python3 + django,我有
- User的模型,只有很少的字段
- 显示所有用户的管理页面
- 一个表单页面,其中显示单个用户,并且可以更新
- 一个带有2个端点的外部API:
GET /api/users/name
(获取所有用户的所有名称)GET /api/users/:id/name
(通过id获取用户名)
我想添加一个name
属性呈现在管理页面(作为一列)和表单页面(只读,不可更改)
如何添加这个&;calculated&;属性,而不需要调用API ?
这是正常的功能,您应该在modeladmin中创建新方法,并且您可以在渲染中使用该方法的结果。更多:https://docs.djangoproject.com/en/4.0/ref/contrib/admin/django.contrib.admin.ModelAdmin.readonly_fields
如果您希望在列表和表单中获得只读用户名,请在list_display
和field
或fieldsets
Modeladmin
选项中添加此方法。
你不需要使用其他api,如果你已经有用户列表。