Django之常见问题
总结Django在使用过程中遇到的一些问题
1.在使用model进行数据查询的时候出现错误:
django matching query does not exist.
是使用get函数引起的错误。使用get方法时,当找不到匹配的query时,就会报DoesNotExist exception.代码这样改一下就可以了
email = 'example@163.com' name = 'develop' try: Group.objects.get(email=email): except Group.DoesNotExist: group = Group() group.name = name group.email = email group.save()
2.访问Bad Request (400)
原因: 配置文件中
ALLOWED_HOSTS的限制导致,允许*即可
3.执行项目迁移的时候,发生错误
SQLite 3.8.3 or later is required
原因:自带的sqlite版本太低, 不能满足要求,需要升级sqlite
# 查看当前版本 sqlite3 --verision #删除老版本 yum remove sqlite # 重新编译 $ wget https://www.sqlite.org/2019/sqlite-autoconf-3270200.tar.gz // 3.39版本: https://www.sqlite.org/2022/sqlite-autoconf-3390400.tar.gz $ tar -zxvf sqlite-autoconf-3270200.tar.gz $ cd sqlite-autoconf-3270200 $ ./configure --prefix=/usr/local $ make && make install # 重新建立连接 $ mv /usr/bin/sqlite3 /usr/bin/sqlite3_7 $ ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3 # export LD_LIBRARY_PATH=”/usr/local/lib” 并执行生效 source ~/.bashrc