私はアプリケーションに検索機能を追加するために、django-haystack tutorialの周りに頭を抱えようとしています。残念ながら、私は検索インデックスを構築する際に重要な部分をあまり理解していません。django-haystackチュートリアルのどのフィールドがインデックスに登録されますか?
次のDjangoのモデルは、一例として役立つチュートリアルでは、:
class Note(models.Model):
user = models.ForeignKey(User)
pub_date = models.DateTimeField()
title = models.CharField(max_length=200)
body = models.TextField()
Note
モデルのそれぞれのインデックスクラスは、このです:少なくとも
class NoteIndex(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, use_template=True)
author = indexes.CharField(model_attr='user')
pub_date = indexes.DateTimeField(model_attr='pub_date')
def get_model(self):
return Note
最後ではなく、私はよ
{{ object.title }}
{{ object.user.get_full_name }}
{{ object.body }}
readiの後に次のようなデータテンプレートを作成するように求められました。チュートリアル全体では、私はまだ索引付けされているものについてはまだ混乱しています。私が理解する限り、フィールドauthor
とpub_date
の内容は、インデックスの作成に使用されます。フィールドtext
は、単にいくつかの設定を提供するためのものです。そして、データテンプレートは、後に検索結果を表示する方法、すなわち、検索結果に表示するために使用するモデルのフィールドを指定する。
これが正しいのですか、まったく間違っていますか?私の意見では、チュートリアルとドキュメンテーションは非常に曖昧です。事前にどうもありがとうございました。
男は、あなたが正確に入力されたとして、フリーテキスト検索と考えることができます! – GreenAsJade
男、あなたは私がここに来た正確な質問を、4年後にタイプしました! @GreenAsJade Man、2年後に私がここに来た正確なコメントをタイプしました!しかし、私にはさらに何かがあります。ドキュメンテーションは実際にはごみ全体です。 –