Я прикладываю текстовый поиск postgresql в свое приложение. Когда я ищу конкретный элемент, я получаю сообщение об ошибке.Pg Text Search ~ PG :: UndefinedColumn: ERROR: column documents.content не существует
SELECT COUNT(*) FROM "documents" INNER JOIN (SELECT "documents"."id" AS pg_search_id, (ts_rank((to_tsvector('english', coalesce("documents"."title"::text, '')) || to_tsvector('english', coalesce("documents"."content"::text, ''))), (to_tsquery('english', ''' ' || 'coffee' || ' ''')), 0)) AS rank FROM "documents" WHERE (((to_tsvector('english', coalesce("documents"."title"::text, '')) || to_tsvector('english', coalesce("documents"."content"::text, ''))) @@ (to_tsquery('english', ''' ' || 'coffee' || ' '''))))) pg_search_documents ON "documents"."id" = pg_search_documents.pg_search_id
в моем документе модели
include PgSearch
pg_search_scope :search, :against => [:title, :content],
:using => {tsearch: {dictionary: "english"}}
def self.text_search(query)
if query.present?
search(query)
else
all
end
end
в мой контроллер документа
def load_documents
@documents = documents_scope.all.text_search(params[:query])
end
как моя база данных подключается в консоли
Document (ID: UUID, category_id: UUID , title: string, created_at: datetime, updated_at: datetime, version_id: uuid)
DocumentVersion (ID: UUID, document_id: UUID, document_version_id: UUID, user_id: UUID, название: строка, содержание: текст, created_at: Дата и время, updated_at: DateTime
Это что-то делать с таблицей присоединиться , но я не уверен, как это исправить. Спасибо за вашу помощь.