Каналы Django и доступ к моделям
Я использую Django 3.2.10 и использую Django Channels с daphne и gunicorn. Я могу заставить мой код вебсокета работать и функционировать без проблем, но когда я получаю доступ к любой из моих моделей django, я сталкиваюсь с проблемой. Я делаю примерно следующее:
async def receive(self):
modelselected = await database_sync_to_async(self.get_model)()
def get_model(self):
return MyModel.objects.all()[0]
Когда я делаю это, что предлагает официальная документация, я получаю следующую ошибку от daphne:
daphne | ERROR Исключение внутри приложения: не удалось подключиться к серверу: No such file or directory
Работает ли сервер локально и принимает ли он соединения на доменном сокете Unix "/var/run/postgresql/.s.PGSQL.5432"?
Мое приложение Django работает совершенно нормально, и я подключаюсь к базе данных без проблем. Я в растерянности, что я делаю не так. И мой Postgres работает на порту 5432. Есть какие-нибудь мысли? Разобрался, что было не так. Я использую docker-compose и при создании контейнеров я не поделился переменными DB в окружении сервера daphne. Поскольку я был сосредоточен на вебсокетах, это не возникло, пока я не попытался получить доступ к БД через модель Django. В общем, теперь все хорошо, но я оставлю это здесь на случай, если кто-то был таким же глупым, как и я!