Is it possible to persist a joined field in Djangos SearchVectorField?
Is it possible to persist a joined field in Djangos SearchVectorField? Is it possible to persist a joined field with Djangos SearchVectorField for full text search? For example: class P(models.Model): brand = models.ForeignKey(Brand, on_delete=models.CASCADE) search_vector = SearchVectorField(null=True, blank=True) code: p = P.objects.get(id=1) p.search_vector = SearchVector('brand__name') p.save() raises this exception: FieldError: Joined field references are not permitted in this query If this is not possible how can you increase the performance of joined annotated queries? 1 Answer 1 I found a workaround to your issue: p = P.objects.annotate(brand_name=SearchVector('brand__name')).get(id=1) p.search_vector = p.brand_name p.save() Update 2018-06-29 As reported in official documentation: If you’re just updating a record and don’t need to do anything with the model object, th...
