Getting channels 2 to work

已查看 1,263 次
跳至第一个未读帖子

John Wayne

未读,
2017年12月1日 09:08:342017/12/1
收件人 Django users
Hi everyone,

I am stuck getting the new channels 2 to a working state. I installed django==2.0rc1,  and channels==2.0.x, daphne==2.0.x, asgiref==2.0.x from the git repo
channels is enabled inside the settings.py. I also created the asgi.py file in the direcotry of the wsgi.py file acording to the docs. But still i get this error

    raise ImproperlyConfigured("Cannot find ASGI_APPLICATION setting.")
django.core.exceptions.ImproperlyConfigured: Cannot find ASGI_APPLICATION setting.

So it seems that ASGI_APPLICATION has to be specified. So after adding the following line:
ASGI_APPLICATION='mytestproject.asgi.application'
and starting ./manage.py runserver it now complains again. So which value is supposed to be there?

      raise ImproperlyConfigured("Cannot find %r in ASGI_APPLICATION module %s" % (name, path))
django.core.exceptions.ImproperlyConfigured: Cannot find 'application' in ASGI_APPLICATION module mytestproject.asgi

I need to stick to version 2 as i want to try out asgigram (https://github.com/andrewgodwin/asgigram).

Thanks

Andrew Godwin

未读,
2017年12月1日 12:22:062017/12/1
收件人 django...@googlegroups.com
Hi John,

It's not in an end-user-useable state quite yet, so apologies for it being hard to install. Crucially, the docs on ASGI_APPLICATION aren't written yet as I'm still working on authentication stuff!

A brief guide is:

 - Make an asgi.py as specified in http://channels.readthedocs.io/en/2.0/deploying.html
 - Make a channels.routing.ProtocolTypeRouter in your project's routing.py and configure this as needed (you'll have to read the code for now)
 - Point ASGI_APPLICATION to that root router.

I'll have a lot more docs and stuff coming soon as I start prepping Channels 2 for a beta release, which will include routing and setup examples.

Andrew

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/3c426628-13da-4ad3-8e4c-3e8938ab0c8d%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

John Wayne

未读,
2017年12月4日 10:56:502017/12/4
收件人 Django users
Hi Andrew,

first of all thanks for your reply. With your answer and the information from your blog I was able to get my asgi application running. 

Now I want to route all http traffic to django's viewsystem back as i dont need channel's http handling. On your blog you posted this snippet

application = ProtocolTypeRouter({
    "http": URLRouter([
        url("^", DjangoViewSystem),
    ]),

But how should the DjangoViewSystem class look like? There is no such file included.


John

On Friday, December 1, 2017 at 6:22:06 PM UTC+1, Andrew Godwin wrote:
Hi John,

It's not in an end-user-useable state quite yet, so apologies for it being hard to install. Crucially, the docs on ASGI_APPLICATION aren't written yet as I'm still working on authentication stuff!

A brief guide is:

 - Make an asgi.py as specified in http://channels.readthedocs.io/en/2.0/deploying.html
 - Make a channels.routing.ProtocolTypeRouter in your project's routing.py and configure this as needed (you'll have to read the code for now)
 - Point ASGI_APPLICATION to that root router.

I'll have a lot more docs and stuff coming soon as I start prepping Channels 2 for a beta release, which will include routing and setup examples.

Andrew
On Fri, Dec 1, 2017 at 6:03 AM, John Wayne <nrftes...@gmail.com> wrote:
Hi everyone,

I am stuck getting the new channels 2 to a working state. I installed django==2.0rc1,  and channels==2.0.x, daphne==2.0.x, asgiref==2.0.x from the git repo
channels is enabled inside the settings.py. I also created the asgi.py file in the direcotry of the wsgi.py file acording to the docs. But still i get this error

    raise ImproperlyConfigured("Cannot find ASGI_APPLICATION setting.")
django.core.exceptions.ImproperlyConfigured: Cannot find ASGI_APPLICATION setting.

So it seems that ASGI_APPLICATION has to be specified. So after adding the following line:
ASGI_APPLICATION='mytestproject.asgi.application'
and starting ./manage.py runserver it now complains again. So which value is supposed to be there?

      raise ImproperlyConfigured("Cannot find %r in ASGI_APPLICATION module %s" % (name, path))
django.core.exceptions.ImproperlyConfigured: Cannot find 'application' in ASGI_APPLICATION module mytestproject.asgi

I need to stick to version 2 as i want to try out asgigram (https://github.com/andrewgodwin/asgigram).

Thanks

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.

Andrew Godwin

未读,
2017年12月4日 12:11:142017/12/4
收件人 django...@googlegroups.com
Hi John,

The ProtocolTypeRouter currently does this for you automatically as long as you don't specify a `http` handler. Otherwise, the ASGI application that runs Django's view system is channels.http.AsgiHandler

Andrew

To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.

To post to this group, send email to django...@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.

Luke Waltman

未读,
2018年3月30日 07:07:292018/3/30
收件人 Django users
Hello Everyone,

I am still having an issue with Channels that was never really solved in an earlier Stackoverflow question...

Why does :

from channels.asgi import get_channel_layer

result in :

from channels.asgi import get_channel_layer
ImportError: No module named asgi

I am using Django (2.03), Channels (2.02) and Python(3.5.1) within a virtual environment.  I also installed asgi_redis.

-Luke

Andrew Godwin

未读,
2018年3月30日 12:49:572018/3/30
收件人 django...@googlegroups.com
That code would be for Channels 1. Channels 2 is an entirely different import set - make sure you are using tutorials or answers specifically for 2.

Andrew

To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.

To post to this group, send email to django...@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
回复全部
回复作者
转发
0 个新帖子