Переустановка каналов в проекте django выдает ошибку: Невозможно импортировать маршрутизацию канала% r:% s "% (маршрутизация, e)) - PullRequest
0 голосов
/ 02 сентября 2018

По какой-то причине мне пришлось скопировать / вставить свой проект в новый virtualenv. У меня не было доступа к списку пипсов старого проекта, поэтому сейчас я устанавливаю библиотеки одну за другой. Это мой список пипсов

Package             Version
------------------- -------
asgi-redis          1.4.3  
asgiref             1.1.2  
async-timeout       2.0.1  
attrs               18.2.0 
autobahn            18.8.2 
Automat             0.7.0  
channels            1.1.5  
constantly          15.1.0 
daphne              1.4.2  
Django              2.1.1  
django-choices      1.6.1  
django-extensions   2.1.2  
djangorestframework 3.8.2  
hyperlink           18.0.0 
idna                2.7    
incremental         17.5.0 
msgpack-python      0.5.6  
pathlib             1.0.1  
Pillow              5.2.0  
pip                 18.0   
psycopg2            2.7.5  
psycopg2-binary     2.7.5  
PyHamcrest          1.9.0  
pytz                2018.5 
redis               2.10.6 
setuptools          40.2.0 
six                 1.11.0 
Twisted             18.7.0 
txaio               18.8.1 
websocket-client    0.51.0 
wheel               0.31.1 
zope.interface      4.5.0  

и это исключение, что я понял, что в коде нет ничего плохого, и я полагаю, что я что-то упустил в конфигурации. Я получаю эту ошибку

Cannot import channel routing %r: %s" % (routing, e))

в routing.py

 @classmethod
    def resolve_routing(cls, routing):
        """
        Takes a routing - if it's a string, it imports it, and if it's a
        dict, converts it to a list of route()s. Used by this class and Include.
        """
        # If the routing was a string, import it
        if isinstance(routing, six.string_types):
            module_name, variable_name = routing.rsplit(".", 1)
            try:
                routing = getattr(importlib.import_module(module_name), variable_name)
            except (ImportError, AttributeError) as e:
                raise ImproperlyConfigured("Cannot import channel routing %r: %s" % (routing, e))
        # If the routing is a dict, convert it
        if isinstance(routing, dict):
            routing = [
                Route(channel, consumer)
                for channel, consumer in routing.items()
            ]
        return routing

какие-либо предложения о том, как я могу это исправить?

...