Python 获得';无';flask加载登录页时的字符串
我正在尝试使用flask编写应用程序。我已经编写了view.py文件,其中包含以下代码Python 获得';无';flask加载登录页时的字符串,python,login,flask-sqlalchemy,Python,Login,Flask Sqlalchemy,我正在尝试使用flask编写应用程序。我已经编写了view.py文件,其中包含以下代码 @lm.user_loader def load_user(id): return Users.query.get(int(id)) 我的问题是,当我点击localhost:5000/时,我总是将id值设置为“无”。这是正确的行为 所以我的问题是我应该如何处理它?因为第一次id没有来自db的值,所以我的代码将始终显示错误 ValueError:以10为基数的int()的文本无效:“无”已将其修改为
@lm.user_loader
def load_user(id):
return Users.query.get(int(id))
我的问题是,当我点击localhost:5000/时,我总是将id值设置为“无”。这是正确的行为
所以我的问题是我应该如何处理它?因为第一次id没有来自db的值,所以我的代码将始终显示错误
ValueError:以10为基数的int()的文本无效:“无”已将其修改为此格式
@lm.user_loader
def load_user(id):
if id is None or id == 'None':
id =-1
print 'ID: %s, leaving load_user' % (id)
return Users.query.get(int(id))
现在可以呈现登录页面什么是
lm.user\u loader
?在_init.py中,我从flask.ext.login导入LoginManager lm=LoginManager()可以设置默认值,这是“来宾”或“匿名用户”的值,def User\u load(id=-1)
。它不是这样工作的。我已经试过了。如果我更改这个函数def load_user(id):id=-1 return Users.query.get(int(id))它可以工作,但id将始终是-1。不知道我能在别的地方把它放在哪里。