python flask TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
python flask TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
我收到这个错误。我将 flask 与 sqlalchemy 和 flask login
一起使用
函数:
def getCoins(id):
userr = User.query.get_or_404(id)
if current_user.adViewStatus == 'done' or current_user.adViewStatus == 'none' or current_user.adViewStatus == 'nope':
return redirect('/coins')
elif current_user.adViewStatus == 'watching':
current_user.points = current_user.points + 25
current_user.adViewStatus = 'doneBoy'
db.session.commit()
return redirect('/youGotTheCoins')
else:
return redirect('/')
查看函数:
@application.route('/coins/get_more/view_ad/<int:id>', methods=['POST', 'GET'])
@login_required
def getCoins1(id):
return getCoins(id)
数据库模型
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String)
password = db.Column(db.String)
email = db.Column(db.String, unique=True)
connection_type = db.Column(db.String)
school = db.Column(db.String)
real_name = db.Column(db.String)
points = db.Column(db.Integer)
adViewStatus = db.Column(db.String)
viewer = db.Column(db.Integer)
我需要一个快速的答案!
谢谢!
默认情况下,SQL 数据库通常允许它们的列包含 None
(或者,SQL 称它为 null)
如果您从未设置用户的 points
值,它将被设置为该列的默认值 - 如果您没有指定另一个值,该值通常为 null
如果您希望某些列始终具有某些值,您可能希望将其设置为不允许空值。在 SQLAlchemy 中,可以使用 Column
的 nullable
参数来完成,例如 points = db.Column(db.Integer, nullable=False)
您可能还想设置一个默认值,例如 points = db.Column(db.Integer, nullable=False, default=0)
我收到这个错误。我将 flask 与 sqlalchemy 和 flask login
一起使用函数:
def getCoins(id):
userr = User.query.get_or_404(id)
if current_user.adViewStatus == 'done' or current_user.adViewStatus == 'none' or current_user.adViewStatus == 'nope':
return redirect('/coins')
elif current_user.adViewStatus == 'watching':
current_user.points = current_user.points + 25
current_user.adViewStatus = 'doneBoy'
db.session.commit()
return redirect('/youGotTheCoins')
else:
return redirect('/')
查看函数:
@application.route('/coins/get_more/view_ad/<int:id>', methods=['POST', 'GET'])
@login_required
def getCoins1(id):
return getCoins(id)
数据库模型
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
username = db.Column(db.String)
password = db.Column(db.String)
email = db.Column(db.String, unique=True)
connection_type = db.Column(db.String)
school = db.Column(db.String)
real_name = db.Column(db.String)
points = db.Column(db.Integer)
adViewStatus = db.Column(db.String)
viewer = db.Column(db.Integer)
我需要一个快速的答案! 谢谢!
默认情况下,SQL 数据库通常允许它们的列包含 None
(或者,SQL 称它为 null)
如果您从未设置用户的 points
值,它将被设置为该列的默认值 - 如果您没有指定另一个值,该值通常为 null
如果您希望某些列始终具有某些值,您可能希望将其设置为不允许空值。在 SQLAlchemy 中,可以使用 Column
的 nullable
参数来完成,例如 points = db.Column(db.Integer, nullable=False)
您可能还想设置一个默认值,例如 points = db.Column(db.Integer, nullable=False, default=0)