• 【Django错误】OSError: raw write() returned invalid length 14 (should have been between 0 and 7)


    错误环境

    使用Django框架创建完models类的之后,用python manage.py migrate命令来生成数据库表的时候出错

    错误代码

    Operations to perform:
      Apply all migrations: SMS, admin, auth, contenttypes, sessions
    Running migrations:
    Running migrations:
    Traceback (most recent call last):
      File "manage.py", line 22, in <module>
        execute_from_command_line(sys.argv)
      File "C:python35libsite-packagesdjangocoremanagement\__init__.py", line 364, in execute_from_command_line
        utility.execute()
      File "C:python35libsite-packagesdjangocoremanagement\__init__.py", line 356, in execute
        self.fetch_command(subcommand).run_from_argv(self.argv)
      File "C:python35libsite-packagesdjangocoremanagementase.py", line 283, in run_from_argv
        self.execute(*args, **cmd_options)
        self.execute(*args, **cmd_options)
      File "C:python35libsite-packagesdjangocoremanagementase.py", line 330, in execute
        output = self.handle(*args, **options)
      File "C:python35libsite-packagesdjangocoremanagementcommandsmigrate.py", line 177, in handle
        self.stdout.write(self.style.MIGRATE_HEADING("Running migrations:"))
      File "C:python35libsite-packagesdjangocoremanagementase.py", line 110, in write
        self._out.write(force_str(style_func(msg)))
    OSError: raw write() returned invalid length 42 (should have been between 0 and 21)

    错误原因

    与win10系统、版本有关系

    可能是unicode字符的返回值问题

    解决办法

    可以使用pip install win_unicode_console安装win_unicode_console,在代码文件中添加以下两行代码解决:

    import win_unicode_console
    win_unicode_console.enable()
    

      

  • 相关阅读:
    1051 Wooden Sticks(贪心-3)
    97 等价交换(贪心-2)
    python文件操作
    python学习-day 2
    python学习-day 1
    Python 测试题目-1
    Python list和dict方法
    Python 字符串
    while循环语句
    Python if判断语句
  • 原文地址:https://www.cnblogs.com/fu-yong/p/8659320.html
Copyright © 2020-2023  润新知