最近项目部署测试,查日志无意中发现了一个问题,异常描述:
‘Cannot resolve keyword ‘release_attribute_in’ into field’
经过定位找到报错代码:release_attribute_in=[2,4]
这是个语法bug,书写不规范,django范围查询条件是在字段key值后面加"__",双下划线,也即是:release_attribute__in=[2,4]
这样漏写python编译器不会直接报错,很容易遗漏,不加异常处理的话,只能打断点找了。平时书写代码一定要规范,像python这样‘傲娇’,对语法比较敏感的语言,更要规范信息,养成良好的代码习惯。最重要的要有打印和异常处理。这样对后期维护和查问题很有帮助。
总结:虽然问题不大,但是让我涨了很多记性:1、代码书写规范;2、对代码整体加日志打印,查问题快速定位;3、异常处理;