Skip to content

DOC-5107 added hash examples for index/query intro page #3609

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 53 additions & 2 deletions doctests/home_json.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import redis.commands.search.aggregation as aggregations
import redis.commands.search.reducers as reducers
from redis.commands.search.field import TextField, NumericField, TagField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @andy-stark-redis this index_definition path was changed on several other places as part of PR#3490. Since now there is a beta release containing this path, can you please change in the other files as well(https://github.com/redis/redis-py/pull/3490/files)?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

from redis.commands.search.query import Query
import redis.exceptions
# STEP_END
Expand All @@ -25,7 +25,12 @@
except redis.exceptions.ResponseError:
pass

r.delete("user:1", "user:2", "user:3")
try:
r.ft("hash-idx:users").dropindex(True)
except redis.exceptions.ResponseError:
pass

r.delete("user:1", "user:2", "user:3", "huser:1", "huser:2", "huser:3")
# REMOVE_END
# STEP_START create_data
user1 = {
Expand Down Expand Up @@ -134,4 +139,50 @@
)
# REMOVE_END

# STEP_START make_hash_index
hashSchema = (
TextField("name"),
TagField("city"),
NumericField("age")
)

hashIndexCreated = r.ft("hash-idx:users").create_index(
hashSchema,
definition=IndexDefinition(
prefix=["huser:"], index_type=IndexType.HASH
)
)
# STEP_END
# REMOVE_START
assert hashIndexCreated
# REMOVE_END

# STEP_START add_hash_data
huser1Set = r.hset("huser:1", mapping=user1)
huser2Set = r.hset("huser:2", mapping=user2)
huser3Set = r.hset("huser:3", mapping=user3)
# STEP_END
# REMOVE_START
assert huser1Set
assert huser2Set
assert huser3Set
# REMOVE_END

# STEP_START query1_hash
findPaulHashResult = r.ft("hash-idx:users").search(
Query("Paul @age:[30 40]")
)

print(findPaulHashResult)
# >>> Result{1 total, docs: [Document {'id': 'huser:3',
# >>> 'payload': None, 'name': 'Paul Zamir', ...
# STEP_END
# REMOVE_START
assert str(findPaulHashResult) == (
"Result{1 total, docs: [Document " +
"{'id': 'huser:3', 'payload': None, 'name': 'Paul Zamir', " +
"'email': '[email protected]', 'age': '35', 'city': 'Tel Aviv'}]}"
)
# REMOVE_END

r.close()
2 changes: 1 addition & 1 deletion doctests/query_agg.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
from redis.commands.search import Search
from redis.commands.search.aggregation import AggregateRequest
from redis.commands.search.field import NumericField, TagField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
import redis.commands.search.reducers as reducers

r = redis.Redis(decode_responses=True)
Expand Down
2 changes: 1 addition & 1 deletion doctests/query_combined.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import warnings
from redis.commands.json.path import Path
from redis.commands.search.field import NumericField, TagField, TextField, VectorField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import Query
from sentence_transformers import SentenceTransformer

Expand Down
2 changes: 1 addition & 1 deletion doctests/query_em.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
import redis
from redis.commands.json.path import Path
from redis.commands.search.field import TextField, NumericField, TagField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import NumericFilter, Query

r = redis.Redis(decode_responses=True)
Expand Down
2 changes: 1 addition & 1 deletion doctests/query_ft.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import redis
from redis.commands.json.path import Path
from redis.commands.search.field import TextField, NumericField, TagField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import NumericFilter, Query

r = redis.Redis(decode_responses=True)
Expand Down
2 changes: 1 addition & 1 deletion doctests/query_geo.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import redis
from redis.commands.json.path import Path
from redis.commands.search.field import GeoField, GeoShapeField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import Query

r = redis.Redis(decode_responses=True)
Expand Down
2 changes: 1 addition & 1 deletion doctests/query_range.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
import redis
from redis.commands.json.path import Path
from redis.commands.search.field import TextField, NumericField, TagField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import NumericFilter, Query

r = redis.Redis(decode_responses=True)
Expand Down
2 changes: 1 addition & 1 deletion doctests/search_quickstart.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import redis.commands.search.reducers as reducers
from redis.commands.json.path import Path
from redis.commands.search.field import NumericField, TagField, TextField
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import Query

# HIDE_END
Expand Down
2 changes: 1 addition & 1 deletion doctests/search_vss.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
TextField,
VectorField,
)
from redis.commands.search.indexDefinition import IndexDefinition, IndexType
from redis.commands.search.index_definition import IndexDefinition, IndexType
from redis.commands.search.query import Query
from sentence_transformers import SentenceTransformer

Expand Down
Loading