Как сохранить значение None в поле хэша redis?

Я создаю структуру телефонной книги в Redis, где структура одной записи выглядит примерно так:

phone:<phone_number>
     phone_no -> 9991119990
     name -> Jhon
     address - > '54 street, somewhere'

phone_no, name, address - это поля для phone:<phone_number> Ключ. может быть любым номером мобильного телефона.

Иногда адрес поля устанавливается пустым, то есть None в случае Python (как показано ниже)

p_details ={
       "name":"Roger"
       "address": None
}

И когда я пытаюсь сделать redis_client.hmset(phone:<phone_number>, p_details) я получаю следующую ошибку:

DataError: Invalid input of type: 'NoneType'. Convert to a byte, string or number first.

И да, мы можем сказать, что сохранение значений None не имеет никакого смысла в нескольких случаях, но здесь я отправляю ответ обратно в API, который ожидает, что все ключи присутствуют в ответе, и если значения не присутствуют, то он ожидает Нет (что походит на ноль в Redis).

Я не могу использовать значения часового или что-то вроде "" здесь из-за других зависимостей приложения.

Можете ли вы предложить какой-либо способ сохранить None(т.е. nil) в redis, соответствующем полю в хэше?

0 ответов

Другие вопросы по тегам