在 django 中访问模型数据
Posted
技术标签:
【中文标题】在 django 中访问模型数据【英文标题】:Accessing model data in django 【发布时间】:2022-01-15 04:35:51 【问题描述】:我有一个 Django 模型:
class Myvalues(models.Model):
items_list = models.JSONField()
我已经在 Django admin 中填充了这个模型。我现在想访问这个模型中的数据。但是我收到一条错误消息:'Manager' object has no attribute ‘items_list'
我尝试访问它的方式如下:
Print(Myvalues.objects.items_list.values())
我不明白为什么会出现这种情况,因为班级中有那个模型。
出于兴趣,我打印了Myvalues
类的all()
结果,如下所示:
print(Myvalues.objects.all())
这导致了以下结果:
<QuerySet [<Myvalues: Myvalues object (1)>]>
如何访问 items_list 模型中的数据?
【问题讨论】:
【参考方案1】:请改用以下语法 (documentation)。
Myvalues.objects.values_list('items_list', flat=True)
如果要返回元组,请省略 flat=True
。
【讨论】:
好东西,谢谢【参考方案2】:Myvalues.objects
返回 django.db.models.manager.Manager
对象,而不是 Myvalues: Myvalues object
为了请求items_list
使用
Myvalues.objects.all()[i].item_list
它返回所有Myvalue
对象并选择一个带有索引的对象。您可以从此对象获取模型属性。
【讨论】:
以上是关于在 django 中访问模型数据的主要内容,如果未能解决你的问题,请参考以下文章