Commit b1ae13ab authored by Agate's avatar Agate 💬
Browse files

Fixed full-text search

parent 1d36df3f
...@@ -59,13 +59,19 @@ def get_query(query_string, search_fields): ...@@ -59,13 +59,19 @@ def get_query(query_string, search_fields):
return query return query
def remove_chars(string, chars):
for char in chars:
string = string.replace(char, "")
return string
def get_fts_query(query_string, fts_fields=["body_text"], model=None): def get_fts_query(query_string, fts_fields=["body_text"], model=None):
search_type = "plain" search_type = "raw"
if query_string.startswith('"') and query_string.endswith('"'): if query_string.startswith('"') and query_string.endswith('"'):
# we pass the query directly to the FTS engine # we pass the query directly to the FTS engine
query_string = query_string[1:-1] query_string = query_string[1:-1]
search_type = "raw"
else: else:
query_string = remove_chars(query_string, ['"', "&", "(", ")", "!", "'"])
parts = query_string.replace(":", "").split(" ") parts = query_string.replace(":", "").split(" ")
parts = ["{}:*".format(p) for p in parts if p] parts = ["{}:*".format(p) for p in parts if p]
if not parts: if not parts:
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment