Отправлять список отфильтрованных пользователей в экземпляр redis при срабатывании функции во фронтенде

Пытаюсь создать функцию, которая при срабатывании во фронтенде будет получать список всех пользователей, которые в данный момент вошли в систему, и создавать пары ключ-значение для всех этих пользователей в моем кэше redis.

Вот что я сейчас пытаюсь сделать. У меня есть эта функция в моих представлениях:

def postToRedis(request):
    online_users = User.objects.filter(is_online='true').order_by('-date_joined')
    queue_of_users = { d['username'] for d in online_users }
    keys = list(queue_of_users.keys())
    values = list(queue_of_users.values())
    for i in range(0, len(keys)):
        redis_instance.set(keys[i], values[i])
    response = {
        'msg': f"{keys} successfully set to {values}"
    }
    return Response(response, 201)

Мое намерение состоит в том, чтобы получить список всех пользователей, отфильтровать пользователей, которые находятся онлайн, получить список всех ключей и соответствующих значений, просмотреть эти списки и записать каждую пару как пару ключ-значение в моем экземпляре redis.

Затем у меня есть конечная точка API для моего фронтенда, чтобы взаимодействовать с бэкендом и запускать эту функцию для выполнения

path("/post", postToRedis, name="postToRedis"),

Однако когда я пытаюсь запустить эту функцию, я не получаю никакого желаемого вывода, записанного в мой redis_instance.

Хотелось бы получить помощь по этому вопросу

Вернуться на верх