from dateutil.parser import isoparse
from django.conf import settings
+from documents.models import Comment
from documents.models import Document
from whoosh import classify
from whoosh import highlight
path=TEXT(sortable=True),
path_id=NUMERIC(),
has_path=BOOLEAN(),
+ comments=TEXT(),
)
def update_document(writer, doc):
tags = ",".join([t.name for t in doc.tags.all()])
tags_ids = ",".join([str(t.id) for t in doc.tags.all()])
+ comments = ",".join([str(c.comment) for c in Comment.objects.filter(document=doc)])
writer.update_document(
id=doc.pk,
title=doc.title,
path=doc.storage_path.name if doc.storage_path else None,
path_id=doc.storage_path.id if doc.storage_path else None,
has_path=doc.storage_path is not None,
+ comments=comments,
)
def _get_query(self):
q_str = self.query_params["query"]
qp = MultifieldParser(
- ["content", "title", "correspondent", "tag", "type"],
+ ["content", "title", "correspondent", "tag", "type", "comments"],
self.searcher.ixreader.schema,
)
qp.add_plugin(DateParserPlugin())