Websocket-соединение не удалось: С помощью django и vue.js

Я пытаюсь настроить вебсокеты для отображения любой новой записи в модели Post (я новичок в работе с вебсокетами)

class Post(models.Model):
    title = models.CharField(max_length=200, unique=True)
    content = models.TextField()
    status = models.IntegerField(choices=STATUS, default=0)
    author = models.ForeignKey(
        User,
        related_name="blog_posts",
        on_delete=models.CASCADE,
    )
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

Это consumers.py

class PostConsumer(ListModelMixin, GenericAsyncAPIConsumer):

    queryset = Post.objects.all()
    serializer_class = PostSerializer
    permissions = (permissions.AllowAny,)

Для проверки того, работает ли это, у меня есть html, и я обрабатываю websockets с помощью vue.js вот более релевантная часть index.html

когда я запускаю в консольных журналах я вижу следующее сообщение

WebSocket connection to 'ws://localhost:8001/ws/' failed: 

Пожалуйста, дайте мне знать, если есть что-то еще, чем я должен поделиться.

У меня возникла коварная ошибка. Вот что у меня было в settings.py

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'user',
    'rest_framework_simplejwt',
    'channels',
    'daphne',
]

Я переместил каналы и Дафну в начало списка, и это сработало. Вот так

INSTALLED_APPS = [
    'channels',
    'daphne',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'user',
    'rest_framework_simplejwt',
]
Вернуться на верх