启动Django服务器时我不断收到NotImplementedError错误

下面是该错误的完整记录。请让我知道什么可以解决此问题:

(env) C:\Users\LENOVO\Desktop\SD\backend>python manage.py runserver
    Watching for file changes with StatReloader
    Exception in thread django-main-thread:
    Traceback (most recent call last):
      File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python38-32\lib\threading.py",line 932,in _bootstrap_inner
        self.run()
      File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python38-32\lib\threading.py",line 870,in run
        self._target(*self._args,**self._kwargs)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\utils\autoreload.py",line 54,in wrapper
        fn(*args,**kwargs)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\core\management\commands\runserver.py",line 109,in inner_run
        autoreload.raise_last_exception()
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\utils\autoreload.py",line 77,in raise_last_exception
        raise _exception[1]
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\core\management\__init__.py",line 337,in execute
        autoreload.check_errors(django.setup)()
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\utils\autoreload.py",**kwargs)


      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\__init__.py",line 24,in setup
        apps.populate(settings.INSTALLED_APPS)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\apps\registry.py",line 91,in populate
        app_config = AppConfig.create(entry)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\django\apps\config.py",line 116,in create
        mod = import_module(mod_path)
      File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python38-32\lib\importlib\__init__.py",line 127,in import_module
        return _bootstrap._gcd_import(name[level:],package,level)
      File "<frozen importlib._bootstrap>",line 1014,in _gcd_import
      File "<frozen importlib._bootstrap>",line 991,in _find_and_load
      File "<frozen importlib._bootstrap>",line 975,in _find_and_load_unlocked
      File "<frozen importlib._bootstrap>",line 671,in _load_unlocked
      File "<frozen importlib._bootstrap_external>",line 783,in exec_module
      File "<frozen importlib._bootstrap>",line 219,in _call_with_frames_removed
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\channels\apps.py",line 6,in <module>
        import daphne.server
File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\daphne\server.py",line 18,in <module>
        asyncioreactor.install()
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\twisted\internet\asyncioreactor.py",line 320,in install
        reactor = AsyncioSelectorReactor(eventloop)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\twisted\internet\asyncioreactor.py",line 69,in __init__
        super().__init__()
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\twisted\internet\base.py",line 571,in __init__
        self.installWaker()
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\twisted\internet\posixbase.py",line 286,in installWaker
        self.addReader(self.waker)
      File "C:\Users\LENOVO\Desktop\SD\backend\env\lib\site-packages\twisted\internet\asyncioreactor.py",line 151,in addReader
        self._asyncioEventloop.add_reader(fd,callWithLogger,reader,File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python38-32\lib\asyncio\events.py",line 501,in add_reader
        raise NotImplementedError
    NotImplementedError
weilili123 回答:启动Django服务器时我不断收到NotImplementedError错误

Windows 3.8不支持Twisted,因此一种解决方案是切换回Python 3.7。

我通过替换packages / twisted / internet / asyncioreactor.py

中的以下行使其在Python 3.8上运行
from twisted.internet.interfaces import IReactorFDSet

try:
    from asyncio import get_event_loop
except ImportError:
    raise ImportError("Requires asyncio.")

# As per ImportError above,this module is never imported on python 2,but

使用

from twisted.internet.interfaces import IReactorFDSet

import sys

try:
    from asyncio import get_event_loop,set_event_loop_policy,WindowsSelectorEventLoopPolicy
except ImportError:
    raise ImportError("Requires asyncio.")

if sys.platform == 'win32':
    set_event_loop_policy(WindowsSelectorEventLoopPolicy())

# As per ImportError above,but

来自龙卷风here面临的类似问题。

本文链接:https://www.f2er.com/3083489.html

大家都在问