django-autocomplete-light
フィールドで検索しているアイテムの長いリストがあり、オートコンプリートは次のように定義されています。
class OccupationAutocomplete(autocomplete_light.AutocompleteModelBase):
model = models.Occupation
search_fields=['title',]
一部の役職は、アルファベット順でリストのかなり先に位置しています。たとえば、次のようになります。
"先生"
次のような他の「あまり理想的ではないタイトル」の後に続きます。
「農業の先生」「建築の先生」「建築の先生」など…
私が望むのは、検索のテキストで始まる最も近いまたは単に一致する「最良の」一致のためです。したがって、誰かが「教える」を検索すると、同じ文字で始まるため、「教師」が得られます。その後、他の精度の低い一致が続きます。
search_fields
優先順位で設定してみた
search_fields=['^title','title',]
しかし、オートコンプリート コードを分析すると、返される前にすべての用語が 1 つのクエリに変更されていることがわかります。
このリストをより適切な方法で並べ替えるにはどうすればよいでしょうか?