Python SQLAlchemy 检查非类型

标签 python sqlalchemy

我正在编写一个处理用户注册的 python 脚本,我需要检查现有用户的 SQLAlchemy 数据库,但是当 lookup.username 不是类型时,它会返回一个属性错误。无论如何检查一个不存在的条目并在 SQLAlchemy for Flask 中越过它?

lookup = User.query.filter_by(phonenumber = request.form['number']).first()
            if request.form['username'] == lookup.username:
                return render_template('numberusererror.html', number = request.form['number'], username = request.form['username'])
            elif request.form['number'] != lookup.phonenumber:
                return render_template('numberusererror.html', number = request.form['number'], username = request.form['username'])

最佳答案

在尝试访问它的属性之前,您可以检查您的查询是否实际返回任何结果。

lookup = User.query.filter_by(phonenumber = request.form['number']).first()
if not lookup:
    #return something for non-existent user
    pass
# continue with your code here 
...

关于Python SQLAlchemy 检查非类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65712798/

相关文章:

python - 从子进程读取回车分隔输出

Python 无法正确运行 shell 命令

events - 如何添加事件处理程序仅在 sqlalchemy 中提交事务后触发一次

python - sqlalchemy 过滤器中的安全参数绑定(bind)

python - pandas DataFrame.to_sql 和 nan 值

python - RGB 图像中最主要的颜色 - OpenCV/NumPy/Python

python - Python CSV 编写器正在将字母添加到每个元素的开头并出现编码问题

javascript - DatetimeProperty 到 Javascript 时间

python - sqlalchemy:如何通过一个查询连接多个表?

python - SQLAlchemy 多对多 Postgresql 双重删除