我正在使用Python,Django和Mongo创建登录系统。这是我的功能
String fileContentsAsString = "ii ... bet ... you, ibetyouyou";
String regex = "i(?>(?!i|bet).)*+bet(?>(?!you).)*+you";
Pattern p = Pattern.compile(regex, Pattern.DOTALL);
Matcher m = p.matcher(fileContentsAsString);
while (m.find()) {
System.out.println(m.group());
}
每次都会将“ WTF错误”返回到模板中,就像语句被忽略一样
我的代码有什么问题? 我是Python的新手
编辑:
答案 0 :(得分:1)
实际上,此代码中只有一条路径不会重新分配response
,在这种情况下,第一个if语句为true,但是Mongodb查询返回一个空集。这是因为调用find()
的结果是一个Cursor实例,该实例始终为布尔True,但是迭代时没有内容,因此跳过for循环。
在您的情况下,您似乎只想要一个结果,因为您总是在第一次迭代后中断。在这种情况下,您应该使用find_one()
返回单个文档并完全删除for循环。
result = client['db']['users'].find_one({'name': u})
if result:
if bcrypt.checkpw( p, res['password'] ):
...