Python 使用不带视图的Django通道

Python 使用不带视图的Django通道,python,django,Python,Django,我们希望使用Django通道使用Keras和Tensorflow作为模型。我们试过烧瓶,但不能用于生产。然后我们尝试了JavasDeepLearning4J,但也遇到了很多问题。我们想用Python解决这个问题 问题是Django是fullstack,我们只需要使用websockets并执行python代码并将结果发送回来 谷歌上根本没有这样做的例子。我们这样做是因为我们有一个角度前端、Spring引导后端和另一个Spring引导应用程序作为所有服务之间的连接器。我们不需要Django的大部分功

我们希望使用Django通道使用Keras和Tensorflow作为模型。我们试过烧瓶,但不能用于生产。然后我们尝试了JavasDeepLearning4J,但也遇到了很多问题。我们想用Python解决这个问题

问题是Django是fullstack,我们只需要使用websockets并执行python代码并将结果发送回来

谷歌上根本没有这样做的例子。我们这样做是因为我们有一个角度前端、Spring引导后端和另一个Spring引导应用程序作为所有服务之间的连接器。我们不需要Django的大部分功能

很难知道你要做什么。没有
@socket.route
或类似的东西


这个问题可能有点帮助,但已经3年了,可能已经过时了。实现我们所需的方法是什么?

如果我正确理解了您的问题,您希望使用Django频道而不在生产中使用任何Django频道吗

这不是问题,但是您必须在virtualenv中安装Django。我假设,您知道如何在应用程序的一部分配置通道,我将仅介绍如何使其工作

  • 您仍然需要使用django启动项目:
    django admin startproject
    将完成此任务
  • 现在您有了一个工作的“核心”项目,您还需要设置频道
    路由
    。我使用核心项目文件夹中的
    routing.py
    (在
    settings.py
    旁边)。您还需要您的消费者,通常位于
    consumers.py
    的同一位置
  • 然后,您需要在
    settings.py
    中设置频道部分。例如:
  • #频道
    ASGI_应用程序='myproject.routing.APPLICATION'
    通道_层={
    “默认值”:{
    “后端”:“channels\u redis.core.RedisChannelLayer”,
    “配置”:{
    “主机”:[('127.0.0.1',6379)],
    },
    },
    }
    
    然后,您需要编辑“已安装的应用”部分:

    已安装的应用程序=[
    #如果你不想要任何“标准”的django,就把它注释掉
    #“django.contrib.admin”,
    #“django.contrib.auth”,
    #“django.contrib.contenttypes”,
    #“django.contrib.sessions”,
    #“django.contrib.messages”,
    #“django.contrib.staticfiles”,
    
    “频道”,真的吗?如何使用websockets在中有详细说明。您到底缺少什么?好吧,对不起,我对Django和Python都是新手。我必须清除urlpatterns=[]现在我不知道如何在没有urlPattern的情况下连接到通道。使用localhost:6379/ws/route1?或者how@CptDayDreamer你为什么不做我链接的教程呢?它有所需的javascript部分,设置了这个答案中复制的所有配置,然后以一种可用的方式解释了整个过程,所以你实际上可以倒立移动部件。是的,它将使用视图,但仅用于呈现服务于聊天室页面的HTML。@Melvyn你不认为我已经这样做了吗?我这样做了,但我不明白,只是无法让它运行。否则,我不会再问关于该教程的具体问题。到底什么不起作用,因为它完全是透明的t告诉我,在不到5分钟的时间内把房间布置好并运行起来。但是,如果你对python一无所知,那么你正在尝试运行,然后你才能走路,应该走了。嗨,很抱歉我迟了回答,我又看了一遍你的问题,在我看来,你实际上不需要使用频道。频道扩展的要点是(a)在Django和(b)中启用WebSoCK处理,使通道层更容易在所有连接的WebSoC客户端与服务器之间进行通信。如果您不需要这个特性(非常好),只想运行一些Python代码并返回它,您可以考虑使用<代码> TrnADO Server < /C>: