今天在python遇到了IndentationError: unexpected indent错误,又涨了知识,python新手不懂缩进规则被无情暴打哈,话不多说上解决办法和图片
这个是缩进错误,我们可以通过下面几步解决他:
首先检查代码是不是有错误的索引
如果没有,全都正确,可以看看是不是使用’’'进行了整段的注释,如果是,一定要保证其与上下相邻代码缩进一致,而#就无所谓
如果还有错,使用notepad++打开文件,选择视图->显示符号->显示空格和制表符,然后查看是不是有空格与制表符混用的情况
点代表空格,箭头是制表符。但如果在vscode中,不论你使用空格还是制表符,用notepad++打开都是空格,所以用vscode的时候不用担心这个问题
同时今天学习了在数据库里查找
三种方式
# all_messages=Message.objects.all()[:1]
# sliced_query=Message.objects.all()
# print(all_messages.query) /可以看对应的sql语句,很方便
# print(sliced_query.query)
# all_messages=Message.objects.filter(name="bobby")
# print(all_messages.query)
# for message in all_messages:
message = Message.objects.get(name="bobby1")
print(message.name)
return render(request, "message_form.html")
Message.objects.get 这个比较严格,如果数据库没有或者有两个数据就会报错。
同时我在这个语句里面发现了django2.2的一个bug,如果输入不存在的数据,浏览器会这样
我们点开pycharm
点击最下面的报错的文件
进入对应的函数,修改
改完之后运行
就好啦