zoukankan      html  css  js  c++  java
  • django 编码错误

    估计这个py2版本的问题,py3就统一utf编码了

    报错代码:

    python :ascii codec can't decode byte 0xe8 in posi

    当django中报这个错误的时候,如果有比较详细的文件路径还好说就可以针对这个文件进行编码处理。但是如果报错中没有文件路径那肯定要疯掉。

    针对没有具体的文件路径解决办法:

    在这个地方增加代码,manage.py

    #!/usr/bin/env python
    import os
    import sys
    
    if __name__ == "__main__":
    #重新加载sys reload(sys)
    #设置编码为utf-8 sys.setdefaultencoding('utf-8')
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "cmdbs.settings") from django.core.management import execute_from_command_line execute_from_command_line(sys.argv)

    这样直接在入口更改就OK了

    那么为什么要重新加载,而直接引用过来则不能调用该函数呢?

          因为setdefaultencoding函数在被系统调用后被删除了,所以通过import引用进来时其实已经没有了,所以必须reload一次sys模块,这样setdefaultencoding才会为可用,才能在代码里修改解释器当前的字符编码。           

  • 相关阅读:
    qmake杂
    Qt界面风格设置
    qss使用详解
    QT数据库操作
    Qt语言家的简单使用
    c++11之右值引用和std::move
    c++11之类型萃取type_traits
    c++11之std::bind和function
    c++11之lambda
    vue中input输入框无法输入
  • 原文地址:https://www.cnblogs.com/menkeyi/p/5899636.html
Copyright © 2011-2022 走看看