Django 支持使用SearchVectorField. 必須to_tsvector在 Postgres 端準備資料,這是由SearchVectorDjango 中的函式完成的:
class SomeSearchableModel(PostgresModel):
searchable = SearchVectorField()
我需要使用未存盤在表的其他列中的資料填充此列。默認的方式是:
class SomeSearchableModel(PostgresModel):
text = TextField()
searchable = SearchVectorField()
每次保存時:
obj.searchable=SearchVector('text') # Column name to be read
此應用程式不會在資料庫中以可用格式保存可搜索資料。內容是在一些后端腳本中準備的。
如何SearchVectorField手動提供內容?
喜歡:
obj.searchable=SearchVector(some_processed_text)
PostgreSQL 查詢部分將是:INSERT INTO ... SET searchable=to_tsvector(...).
在 Postgres 中計算內容是沒有選擇的。
uj5u.com熱心網友回復:
我想你只是使用搜索查找。
取自 - https://docs.djangoproject.com/en/3.2/ref/contrib/postgres/search/#the-search-lookup
Entry.objects.filter(body_text__search='Cheese')
uj5u.com熱心網友回復:
SearchVector 的引數可以是任何運算式或欄位的名稱。多個引數將使用空格連接在一起,以便搜索檔案將它們全部包含在內。??
SearchVector(Value('some text'))
感謝斯文的回答。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/353911.html
標籤:Python 姜戈 PostgreSQL
上一篇:將資訊從AJAX傳遞到控制器類
