python - 检查对象是否存在

标签 python database django view model

我需要检查 Model.objects.filter(...) 是否出现任何内容,但不需要插入任何内容。到目前为止我的代码是:

user_pass = log_in(request.POST)  # form class
if user_pass.is_valid():
    cleaned_info = user_pass.cleaned_data
    user_object = User.objects.filter(email = cleaned_info['username'])

最佳答案

我认为从逻辑和效率的角度来看,最简单的方法是使用查询集的 exists() 函数,记录在这里:

https://docs.djangoproject.com/en/stable/ref/models/querysets/#django.db.models.query.QuerySet.exists

所以在你上面的例子中,我会简单地写:

if User.objects.filter(email = cleaned_info['username']).exists():
    # at least one object satisfying query exists
else:
    # no object satisfying query exists

关于python - 检查对象是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11714536/

相关文章:

python - 如何在终端中从 python 设置可选参数?

sql - MS SQL 的递归函数

c# - sqlite 抛出一个 "String not recognized as a valid datetime"

python - ./manage.py runserver 使用 https

python - 在 Heroku 上部署 asgi 和 wsgi

python 由于多次重复调用 pandas 而卡住

python - 在 Django 中覆盖动态 CSS

python - 自动修补 PYTHONPATH(使用 Fabric 任务时)

node.js - 多次序列化查询

python - 在同一 View 中使用多个表单