@gromyko21

Как на django channels создавать комнаты?

Подскажите, как на django channels добавлять комнаты? Я в ступоре сижу, документацию несколько раз прочел. Как я понял нужно что-то поменять в cunsomer
def connect(self):
        self.room_name = self.scope['url_route']['kwargs']['room_name']
        self.room_group_name = 'chat_%s' % self.room_name
        async_to_sync(self.channel_layer.group_add)(
            self.room_group_name,
            self.channel_name
        )
        self.accept()

Вероятнее всего в этом моменте. Нужно это, чтобы связать пользователей личным чатом.
На всякий случай кину модель.
class Message(models.Model):
    '''
    Обмен личными сообщениями
    '''
    author = models.ForeignKey(User, related_name='author_messages', on_delete=models.CASCADE)
    content = models.TextField()
    timestamp = models.DateTimeField(auto_now_add=True)

    def last_10_messages():
        return Message.objects.order_by('-timestamp').all()[:10]

Пересмотрел по этому поводу кучу статей, гайдов, документаций, но к сожалению сам не смог разобраться.
  • Вопрос задан
  • 88 просмотров
Пригласить эксперта
Ответы на вопрос 1
tumbler
@tumbler Куратор тега Django
бекенд-разработчик на python
А попробуйте начать с написания чата по-старинке, через формы и обычные HTML-ки. Когда набьете руку, добавьте API, если и этого окажется мало - переходите на channels.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы