2

对于 PostgreSQL 中的小型搜索,可以轻松使用 http://django-orm.readthedocs.org/en/latest/orm-pg-fulltext.html ,如文档中所示。

以下是我用来实现它的步骤 -

'''call the libraries'''
from djorm_pgfulltext.models import SearchManager
from djorm_pgfulltext.fields import VectorField


class Notes(models.Model):
   title = models.CharField()
   description = models.TextField()

    # create a vector field
    search_index = VectorField()

    objects = models.Manager()
    search_manager = SearchManager(
        fields=('title', 'description'),
        config='pg_catalog.english',
        search_field='search_index',
        auto_update_search_field=True
    )

运行迁移,所有更改都反映在数据库中。最后一步 - 在我的 postgresql 数据库中,我执行了以下操作 -

sudo -u postgres psql postgres // login as root

CREATE EXTENSION unaccent;
ALTER FUNCTION unaccent(text) IMMUTABLE;

所有这一切都完成了,现在我打开我的外壳

from myapp.models import Notes
  In [2]: Note.search_manager.search("p")
  Out[3]: [] 

任何想法,为什么我没有得到任何结果?

什么不见​​了?

4

0 回答 0