python - Django ORM 命令获取不带空字段的不同值

标签 python django

我正在使用像foolwing这样的命令来获取表中列的所有不同值:

set(deg_course_cat.objects.values_list('degree_code', flat=True))

但是列表还会返回一个 '' (空槽),无论它们出现在列中。我如何发出命令来仅获取具有值而不是 NULL 值的单元格?

最佳答案

过滤掉它们

set((deg_course_cat.objects.filter(degree_code__isnull=False).values_list('degree_code', flat=True))

编辑

过滤掉空结果和空结果。所以问题可以找到here

set(
 deg_course_cat.objects
 .exclude(degree_code__isnull=True)
 .exclude(degree_code__exact='')
 .values_list('degree_code', flat=True)
)

关于python - Django ORM 命令获取不带空字段的不同值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22979296/

相关文章:

python - 为什么 Python 的列表理解循环顺序是倒着的?

Python3通用继承层次结构

python - 为什么需要 Visual C++ Installer 来为 Python 安装 numpy 包?

python - 哪种数据结构适合这个?

python - 在 Django 中将 HTML 转换为 PDF 时出错

python - 检查鼠标是否在pygame窗口之外

每个请求调用 Django 自定义上下文处理器两次

django Restframework token 身份验证失败,错误代码为 "invalid token"

python - 当 models.py 在应用程序的文件夹中时未检测到 Django 迁移

python - 在哪里放置适用于模型的方法