只在模型上设置一次计算属性



我使用python3 + django,我有

  • User的模型,只有很少的字段
  • 显示所有用户的管理页面
  • 一个表单页面,其中显示单个用户,并且可以更新
  • 一个带有2个端点的外部API:
    1. GET /api/users/name(获取所有用户的所有名称)
    2. 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_displayfieldfieldsetsModeladmin选项中添加此方法。

你不需要使用其他api,如果你已经有用户列表。

相关内容

  • 没有找到相关文章

最新更新