Python Django模型或admin的非db字段

Python Django模型或admin的非db字段,python,django,django-models,django-admin,django-grappelli,Python,Django,Django Models,Django Admin,Django Grappelli,我有一个模型,其中有些字段存储在db中。除此之外,我还需要实现非db字段,这些字段将使用自定义API加载和保存。 用户应该使用管理界面与模型交互,Grappelli用于增强标准Django管理 我对以下其中一项感兴趣: 为虚拟字段或属性建模,我可以在其中覆盖如何读取和保存自定义字段。简单的python属性不能与Django admin一起使用 管理员可编辑可调用项不确定是否可能 在管理中显示和处理自定义字段的任何其他方法,除了创建自定义表单和将逻辑移到表单中。 我认为您可以使用无模型类,它包装模

我有一个模型,其中有些字段存储在db中。除此之外,我还需要实现非db字段,这些字段将使用自定义API加载和保存。 用户应该使用管理界面与模型交互,Grappelli用于增强标准Django管理

我对以下其中一项感兴趣:

为虚拟字段或属性建模,我可以在其中覆盖如何读取和保存自定义字段。简单的python属性不能与Django admin一起使用 管理员可编辑可调用项不确定是否可能 在管理中显示和处理自定义字段的任何其他方法,除了创建自定义表单和将逻辑移到表单中。
我认为您可以使用无模型类,它包装模型类并具有一些额外的字段,您可以在这些字段中设置/获取或保存到其他位置

我无法想象可编辑的可调用对象是什么。但是,为什么不想将逻辑放入表单中呢?请查看大写字母的名称。但是,它们始终是只读的,即使您将@prop_name.setter与@prop_属性一起使用。表单,好吧,它们根本不是为它而设计的,所以这有点违反了概念。我认为定制表单将是一种方式……而且在体系结构上,在django模型类中有非django模型字段是没有意义的。你真正想要的是一个ViewModel,这是CustomForm可以提供给你的。现在我很困惑。你说的是在列表页上编辑东西,还是在编辑细节页上编辑东西?丹尼尔,我想在编辑页上编辑东西。可调用项只允许在列表和编辑视图中显示内容。您可以在列表显示和表单集中使用它们。