Django-模型字段和模型属性之间有什么区别?

标签 django django-models

在此链接中(对于ReadOnlyField):http://www.django-rest-framework.org/api-guide/fields/#readonlyfield说:“当包含与属性而不是模型字段相关的字段名称时,默认情况下此字段与ModelSerializer一起使用”。这么说,您能给我一个示例字段名称为“属性”的示例字段名称为“字段”的示例吗?

最佳答案

Django中,model field与数据库中的列有关。另一方面,model attribute属于添加到model的方法或属性。

例子

class MyModel(models.Model):
    name = models.CharField()
    quantity = models.IntegerField()
    price = models.DecimalField()

    @property
    def description(self):
        return '{}x of {}'.format(quantity, name)

    def compute_total(self):
        return quantity * price

在上面的示例中,namequantitypricemodel fields,因为它们是数据库中的列。同时,descriptioncompute_totalmodel attributes

关于Django-模型字段和模型属性之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33379587/

相关文章:

python - 如何从 django 请求中获取完整的 url

python for循环不返回多个字典

django - GenericForeignKey、ContentType 和 DjangoRestFramework

python - ValueError... "Contestant.contest"必须是 "Contest"实例

django - 如何为连接模型编写序列化器?

django - 如何使用 django 查询集按小时对对象进行分组?

python - 从 Django 应用程序触发分布式异步处理的良好架构是什么?

python - multiplechoicefield - 如何更新每个页面加载的选项列表

python - 如何使用 ModelSerializer 显示所有模型字段?

Django 没有属性 'GeoManager' 问题