У меня есть модель компании с соответствующими тегами . Мне нужно настроить поиск по имени, содержимому и тегам, и если поиск работает с полями name , content , он не работает в ArrayField -> тегах
models.py
class Company(models.Model):
name = models.CharField(max_length=150)
content = models.TextField(blank=True)
**tags** = ArrayField(models.CharField(max_length=200), blank=True, null=True
utils.py
def get_rank_search_result(q, category=None):
...
vector = SearchVector('name', config='russian', weight='A') + \
SearchVector('content', config='russian', weight='B') + \
SearchVector('tags', config='russian', weight='B')
#SearchVector(Func(F('tags'), Value(' '), function='array_to_string'), config='russian', weight='B')
#doesnt work either
query = SearchQuery(q, config='russian', search_type=search_type)
return list(qs.annotate(rank=SearchRank(vector, query)).filter(rank__gte=0.3).order_by('-rank'))
```
Actually, the search stops working after i add line with SearchVector('tags')....