python - 如何检索查询集对象中字段的值

标签 python django

我是 Django 的新手,有以下模型:

class MainFile(models.Model):
    owner = models.ForeignKey(User)
    # docfile = models.FileField(verbose_name= 'Enter you file', null=True)
    file_id = models.UUIDField(max_length=38, primary_key=True, default=1)
    file_name = models.CharField(max_length=70)
    file_suffix = models.CharField(max_length=5, blank=True, null=True)
    file_date = models.DateTimeField(auto_now_add=True, null=True)

所以我想使用 file_id 过滤表的一行,并在该行中访问 file_suffix。目前我找到了以下方法,但很棘手:
obj = MainFile.objects.filter(file_id = 'e3e978a3-0375-4bb9-85a2-5175e2ec097d')
suffix = [i.file_suffix for i in obj] 

我尝试了很多方法,但没有运气,但我知道这不是正确的方法。使用 file_id 作为过滤器创建 obj 后如何获取 file_suffix?

最佳答案

您可以使用 get而不是 filter

obj = MainFile.objects.get(file_id='e3e978a3-0375-4bb9-85a2-5175e2ec097d')
obj.file_suffix

使用 get当您的查询集最多从数据库中取回 1 行时。在这种情况下,由于 file_id被标记为主键,你可以确定它是唯一的。

关于python - 如何检索查询集对象中字段的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34964799/

相关文章:

c# - HashTable、Array、ArrayList、LinkedList 等的空间复杂度是多少(如果还有的话)

python - 如何使用 Orange 离散化存储在 numpy 数组中的数据?

python - API 属性错误 - 模块对象没有属性 'UserViewSet' - Django Rest Framework

mysql - 如何在 Django 中同时处理数据库修改?

python Django : join view on the admin interface

django - 从django切换到什么框架值得

python - 如何从 python 列表中的列和行中将数据写入 csv 文件?

python - pyserial - 可以从线程 a 写入串行端口,阻止从线程 b 读取?

python - 在Python中使用Unix命令(在我的例子中是node.js/lessc)?

django - 为什么 python manage.pycollectstatic 不将文件复制到正确的位置?