mirror of
https://github.com/Alexander-D-Karpov/akarpov
synced 2025-02-22 11:50:33 +03:00
fixed song search
This commit is contained in:
parent
f268212094
commit
bf182dbd0a
|
@ -11,7 +11,7 @@ class SongDocument(Document):
|
||||||
properties={
|
properties={
|
||||||
"name": fields.TextField(
|
"name": fields.TextField(
|
||||||
fields={
|
fields={
|
||||||
"raw": fields.KeywordField(normalizer="lowercase"),
|
"raw": fields.KeywordField(normalizer="lowercase_normalizer"),
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
"name_transliterated": fields.TextField(
|
"name_transliterated": fields.TextField(
|
||||||
|
@ -30,7 +30,7 @@ class SongDocument(Document):
|
||||||
properties={
|
properties={
|
||||||
"name": fields.TextField(
|
"name": fields.TextField(
|
||||||
fields={
|
fields={
|
||||||
"raw": fields.KeywordField(normalizer="lowercase"),
|
"raw": fields.KeywordField(normalizer="lowercase_normalizer"),
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
"name_transliterated": fields.TextField(
|
"name_transliterated": fields.TextField(
|
||||||
|
@ -67,14 +67,14 @@ class Index:
|
||||||
settings = {
|
settings = {
|
||||||
"number_of_shards": 1,
|
"number_of_shards": 1,
|
||||||
"number_of_replicas": 0,
|
"number_of_replicas": 0,
|
||||||
"normalizer": {
|
|
||||||
"lowercase_normalizer": {
|
|
||||||
"type": "custom",
|
|
||||||
"char_filter": [],
|
|
||||||
"filter": ["lowercase"],
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"analysis": {
|
"analysis": {
|
||||||
|
"normalizer": {
|
||||||
|
"lowercase_normalizer": {
|
||||||
|
"type": "custom",
|
||||||
|
"char_filter": [],
|
||||||
|
"filter": ["lowercase"],
|
||||||
|
}
|
||||||
|
},
|
||||||
"filter": {
|
"filter": {
|
||||||
"my_transliterator": {
|
"my_transliterator": {
|
||||||
"type": "icu_transform",
|
"type": "icu_transform",
|
||||||
|
@ -151,8 +151,8 @@ class Index:
|
||||||
"filter": [
|
"filter": [
|
||||||
"lowercase",
|
"lowercase",
|
||||||
"autocomplete_filter",
|
"autocomplete_filter",
|
||||||
"english_stemmer", # Apply English stemming for autocomplete
|
"english_stemmer",
|
||||||
"russian_stemmer", # Include Russian stemming if applicable
|
"russian_stemmer",
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
"search_synonym_with_stemming": {
|
"search_synonym_with_stemming": {
|
||||||
|
@ -161,8 +161,8 @@ class Index:
|
||||||
"filter": [
|
"filter": [
|
||||||
"lowercase",
|
"lowercase",
|
||||||
"synonym_filter",
|
"synonym_filter",
|
||||||
"english_stemmer", # Apply English stemming for synonym search
|
"english_stemmer",
|
||||||
"russian_stemmer", # Include Russian stemming if processing Russian synonyms
|
"russian_stemmer",
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -183,7 +183,7 @@ class AuthorDocument(Document):
|
||||||
name = fields.TextField(
|
name = fields.TextField(
|
||||||
fields={
|
fields={
|
||||||
"raw": fields.KeywordField(),
|
"raw": fields.KeywordField(),
|
||||||
"exact": fields.KeywordField(normalizer="lowercase"),
|
"exact": fields.KeywordField(normalizer="lowercase_normalizer"),
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
name_transliterated = fields.TextField(
|
name_transliterated = fields.TextField(
|
||||||
|
@ -198,7 +198,7 @@ class AuthorDocument(Document):
|
||||||
|
|
||||||
class Index:
|
class Index:
|
||||||
name = "authors"
|
name = "authors"
|
||||||
settings = SongDocument.Index.settings # Reuse settings
|
settings = SongDocument.Index.settings
|
||||||
|
|
||||||
class Django:
|
class Django:
|
||||||
model = Author
|
model = Author
|
||||||
|
@ -209,7 +209,7 @@ class AlbumDocument(Document):
|
||||||
name = fields.TextField(
|
name = fields.TextField(
|
||||||
fields={
|
fields={
|
||||||
"raw": fields.KeywordField(),
|
"raw": fields.KeywordField(),
|
||||||
"exact": fields.KeywordField(normalizer="lowercase"),
|
"exact": fields.KeywordField(normalizer="lowercase_normalizer"),
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
name_transliterated = fields.TextField(
|
name_transliterated = fields.TextField(
|
||||||
|
@ -243,7 +243,7 @@ class AlbumDocument(Document):
|
||||||
|
|
||||||
class Index:
|
class Index:
|
||||||
name = "albums"
|
name = "albums"
|
||||||
settings = SongDocument.Index.settings # Reuse settings
|
settings = SongDocument.Index.settings
|
||||||
|
|
||||||
class Django:
|
class Django:
|
||||||
model = Album
|
model = Album
|
||||||
|
|
Loading…
Reference in New Issue
Block a user