python - 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
...
推荐阅读
- javascript - 从 Python 发送到 JS 数据并获得响应
- javascript - 为什么 Node Pdfkit 偶尔会在我的代码中创建损坏的文件?
- python - Asyncio 等待状态改变而没有事件
- r - 为什么我用 powerSim (simr) 获得的统计功效太低了?
- go - Go:如何创建带有单元测试值的 schema.ResourceData 类型的实例?
- python - Python tkinter GUI 简单菜鸟问题:是否有必要使用类进行 tkinter GUI 事件处理?
- r - group_by() 和 unnest_tokens() 之后的 row_number() 错误
- flutter - 如何在颤动中为 FadeInImage.assetNetwork 图像赋予圆角矩形?
- json - 如何使用 jq 将获取数组的对象插入到数组中?
- r - R tidyverse如何在彼此之后做两个pivot_longer而不是一个