модуль «mysite.asgi» не имеет атрибута «channel_layer» в приложении Heroku и Django - PullRequest
0 голосов
/ 13 апреля 2020

Я пытаюсь развернуть приложение Django в Heroku, но получаю следующую ошибку:

2020-04-13T08:45:00.134349+00:00 app[web.1]: Traceback (most recent call last):
2020-04-13T08:45:00.134389+00:00 app[web.1]:   File "/app/.heroku/python/bin/daphne", line 8, in <module>
2020-04-13T08:45:00.134519+00:00 app[web.1]:     sys.exit(CommandLineInterface.entrypoint())
2020-04-13T08:45:00.134524+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.7/site-packages/daphne/cli.py", line 191, in entrypoint
2020-04-13T08:45:00.134697+00:00 app[web.1]:     cls().run(sys.argv[1:])
2020-04-13T08:45:00.134699+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.7/site-packages/daphne/cli.py", line 252, in run
2020-04-13T08:45:00.134891+00:00 app[web.1]:     application = import_by_path(args.application)
2020-04-13T08:45:00.134913+00:00 app[web.1]:   File "/app/.heroku/python/lib/python3.7/site-packages/daphne/utils.py", line 14, in import_by_path
2020-04-13T08:45:00.135028+00:00 app[web.1]:     target = getattr(target, bit)
2020-04-13T08:45:00.135056+00:00 app[web.1]: AttributeError: module 'mysite.asgi' has no attribute 'channel_layer

Вот мой Procfile:

web: daphne WR.asgi:channel_layer --port $PORT --bind 0.0.0.0 -v2

А вот как я определил Redis на моем settings.py :

CHANNEL_LAYERS = {
    'default': {
        'BACKEND': 'channels_redis.core.RedisChannelLayer',
        'CONFIG': {
            "hosts": [('https://mytestapp1.herokuapp.com/', 6379)],
            'capacity': 1500,
            'expiry': 2,
        },
    },
}

Может кто-нибудь помочь мне найти то, что я делаю неправильно? Может ли это быть из-за того, что мне нужно добавить аддон Redis heroku в мое приложение?

1 Ответ

2 голосов
/ 13 апреля 2020

Было бы неплохо увидеть asgi.py, но я полагаю, это могло бы помочь.

web: daphne WR.asgi: application --port $ PORT --bind 0.0.0.0 - v2

...