Django 通道和访问模型

Django Channels and Accessing Models

我 运行正在使用 Django 3.2.10,我正在使用 Django Channels 与 daphne 和 gunicorn。我可以将我的 websocket 代码设置为 运行 并正常运行,但是当我去访问我的任何 django 模型时,我遇到了障碍。我正在做这样的事情:

async def receive(self):
   modelselected = await database_sync_to_async(self.get_model)()

def get_model(self):
   return MyModel.objects.all()[0]

当我按照官方文档的建议执行此操作时,我从 daphne 收到以下错误:

达芙妮 |应用程序内部出现错误异常:无法连接到服务器:没有这样的文件或目录 服务器 运行 正在本地并接受 Unix 域套接字“/var/run/postgresql/.s.PGSQL.5432”上的连接吗?

我的 Django 应用程序运行良好,我连接到数据库没有问题。我对自己做错了什么感到茫然。我的 Postgres 在端口 5432 上 运行ning。有什么想法吗?

所以弄清楚出了什么问题。我正在使用 docker-compose 并在创建容器时,我从未在达芙妮服务器的环境中共享数据库变量。由于我专注于 websockets,直到我尝试通过 Django 模型访问数据库时,它才出现。不管怎样,现在一切都很好,但我会把它留在这里,以防有人像我一样愚蠢!