Как я могу проверить, если значение существует в базе данных Redis с помощью Python-Redis - PullRequest
0 голосов
/ 11 ноября 2018

Вот мой код Python:

def check(request):
    import redis
    R = redis.StrictRedis(host='127.0.0.1', port=6379, db=0)
    R.set("name","srk")
    r = R.HSET("name","srk")
    print(r)

Ошибка с этим сообщением об ошибке:

Internal Server Error: /get_user/
Traceback (most recent call last):
  File "/home/soubhagya/.local/share/virtualenvs/pipenv-r-zifbiy/lib/python3.5/site-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/home/soubhagya/.local/share/virtualenvs/pipenv-r-zifbiy/lib/python3.5/site-packages/django/core/handlers/base.py", line 126, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/home/soubhagya/.local/share/virtualenvs/pipenv-r-zifbiy/lib/python3.5/site-packages/django/core/handlers/base.py", line 124, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/soubhagya/Desktop/Dev/rango/backend/access/views.py", line 103, in get_user
    r = R.HSET("name","srk")
AttributeError: 'StrictRedis' object has no attribute 'HSET'

В py-redis, как я могу проверить, существует ли значение в базе данных redis или нет. Необработанный запрос будет полезен. Пожалуйста, взгляните на мой код.

1 Ответ

0 голосов
/ 11 ноября 2018

StrictRedis не имеет функции HSET, но имеет функцию hset для настройки полей в Redis Hashes. Это причина ошибки, которую вы получаете.

Чтобы проверить, существует ли ключ в Redis с помощью redis-py, используйте r = R.exists("name").

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...