Fix search setup
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
This commit is contained in:
@@ -10,12 +10,14 @@ from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_main, menu_multi_item, menu_object,
|
||||
menu_secondary
|
||||
)
|
||||
from mayan.apps.documents.search import (
|
||||
document_page_search, document_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.events.links import (
|
||||
link_events_for_object, link_object_event_types_user_subcriptions_list,
|
||||
)
|
||||
from mayan.apps.events.permissions import permission_events_view
|
||||
from mayan.apps.documents.search import document_page_search, document_search
|
||||
from mayan.apps.navigation.classes import SourceColumn
|
||||
|
||||
from .dependencies import * # NOQA
|
||||
@@ -115,12 +117,16 @@ class CabinetsApp(MayanAppConfig):
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
field='document_version__document__cabinets__label',
|
||||
field='document__cabinets__label',
|
||||
label=_('Cabinets')
|
||||
)
|
||||
document_search.add_model_field(
|
||||
field='cabinets__label', label=_('Cabinets')
|
||||
)
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__cabinets__label',
|
||||
label=_('Cabinets')
|
||||
)
|
||||
|
||||
menu_facet.bind_links(
|
||||
links=(link_document_cabinet_list,), sources=(Document,)
|
||||
|
||||
@@ -8,7 +8,9 @@ from mayan.apps.common.apps import MayanAppConfig
|
||||
from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_object, menu_secondary
|
||||
)
|
||||
from mayan.apps.documents.search import document_page_search, document_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_page_search, document_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.events.links import (
|
||||
link_events_for_object, link_object_event_types_user_subcriptions_list
|
||||
@@ -80,13 +82,17 @@ class DocumentCommentsApp(MayanAppConfig):
|
||||
SourceColumn(attribute='comment', source=Comment)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
field='document_version__document__comments__comment',
|
||||
field='document__comments__comment',
|
||||
label=_('Comments')
|
||||
)
|
||||
document_search.add_model_field(
|
||||
field='comments__comment',
|
||||
label=_('Comments')
|
||||
)
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__comments__comment',
|
||||
label=_('Comments')
|
||||
)
|
||||
|
||||
menu_facet.bind_links(
|
||||
links=(link_comments_for_document,), sources=(Document,)
|
||||
|
||||
@@ -12,7 +12,9 @@ from mayan.apps.common.classes import ModelField
|
||||
from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_multi_item, menu_secondary, menu_tools
|
||||
)
|
||||
from mayan.apps.documents.search import document_search, document_page_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_search, document_page_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.documents.signals import post_version_upload
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.navigation.classes import SourceColumn
|
||||
@@ -133,10 +135,10 @@ class DocumentParsingApp(MayanAppConfig):
|
||||
)
|
||||
|
||||
document_search.add_model_field(
|
||||
field='pages__content__content', label=_('Content')
|
||||
field='versions__pages__content__content', label=_('Content')
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
document_version_page_search.add_model_field(
|
||||
field='content__content', label=_('Content')
|
||||
)
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ document_search = SearchModel(
|
||||
model_name='Document', permission=permission_document_view,
|
||||
serializer_path='mayan.apps.documents.serializers.DocumentSerializer'
|
||||
)
|
||||
|
||||
'''
|
||||
document_search.add_model_field(
|
||||
field='document_type__label', label=_('Document type')
|
||||
)
|
||||
@@ -51,10 +51,10 @@ document_search.add_model_field(
|
||||
field='uuid', label=_('UUID'),
|
||||
transformation_function=transformation_format_uuid
|
||||
)
|
||||
document_search.add_model_field(
|
||||
field='versions__checksum', label=_('Checksum')
|
||||
)
|
||||
|
||||
#document_search.add_model_field(
|
||||
# field='versions__checksum', label=_('Checksum')
|
||||
#)
|
||||
'''
|
||||
document_page_search = SearchModel(
|
||||
app_label='documents', list_mode=LIST_MODE_CHOICE_ITEM,
|
||||
model_name='DocumentPage', permission=permission_document_view,
|
||||
@@ -65,10 +65,10 @@ document_page_search = SearchModel(
|
||||
document_version_page_search = SearchModel(
|
||||
app_label='documents', list_mode=LIST_MODE_CHOICE_ITEM,
|
||||
model_name='DocumentVersionPage', permission=permission_document_view,
|
||||
queryset=get_queryset_document_version_page_search_queryset,
|
||||
#queryset=get_queryset_document_version_page_search_queryset,
|
||||
serializer_path='mayan.apps.documents.serializers.DocumentPageVersionSerializer'
|
||||
)
|
||||
|
||||
'''
|
||||
document_page_search.add_model_field(
|
||||
field='document__document_type__label',
|
||||
label=_('Document type')
|
||||
@@ -83,10 +83,12 @@ document_page_search.add_model_field(
|
||||
document_page_search.add_model_field(
|
||||
field='document__description', label=_('Description')
|
||||
)
|
||||
document_page_search.add_model_field(
|
||||
field='document__document_version__checksum', label=_('Checksum')
|
||||
)
|
||||
'''
|
||||
#document_page_search.add_model_field(
|
||||
# field='document__document_version__checksum', label=_('Checksum')
|
||||
#)
|
||||
|
||||
'''
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__document_type__label',
|
||||
label=_('Document type')
|
||||
@@ -104,3 +106,4 @@ document_version_page_search.add_model_field(
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__checksum', label=_('Checksum')
|
||||
)
|
||||
'''
|
||||
|
||||
@@ -601,12 +601,10 @@ class TrashedDocumentAPIViewTestMixin(object):
|
||||
)
|
||||
|
||||
def _request_test_trashed_document_api_image_view(self):
|
||||
latest_version = self.test_document.latest_version
|
||||
|
||||
return self.get(
|
||||
viewname='rest_api:documentpage-image', kwargs={
|
||||
'pk': latest_version.document.pk,
|
||||
'page_pk': latest_version.pages.first().pk
|
||||
'pk': self.test_document.pk,
|
||||
'page_pk': self.test_document.pages.first().pk
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
@@ -184,7 +184,14 @@ class SearchModel(object):
|
||||
query_string=query_string, global_and_search=global_and_search
|
||||
)
|
||||
|
||||
try:
|
||||
queryset = self.get_queryset().filter(search_query.query).distinct()
|
||||
except Exception:
|
||||
logger.error(
|
||||
'Error filtering model %s with queryset: %s', self.model,
|
||||
search_query.query
|
||||
)
|
||||
raise
|
||||
|
||||
if self.permission:
|
||||
queryset = AccessControlList.objects.restrict_queryset(
|
||||
|
||||
@@ -12,7 +12,9 @@ from mayan.apps.common.menus import (
|
||||
menu_tools
|
||||
)
|
||||
from mayan.apps.document_indexing.handlers import handler_index_document
|
||||
from mayan.apps.documents.search import document_page_search, document_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_page_search, document_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.documents.signals import post_version_upload
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.navigation.classes import SourceColumn
|
||||
@@ -156,11 +158,19 @@ class FileMetadataApp(MayanAppConfig):
|
||||
label=_('File metadata value')
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
#document_page_search.add_model_field(
|
||||
# field='document__document_version__file_metadata_drivers__entries__key',
|
||||
# label=_('File metadata key')
|
||||
#)
|
||||
#document_page_search.add_model_field(
|
||||
# field='document__document_version__file_metadata_drivers__entries__value',
|
||||
# label=_('File metadata value')
|
||||
#)
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__file_metadata_drivers__entries__key',
|
||||
label=_('File metadata key')
|
||||
)
|
||||
document_page_search.add_model_field(
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__file_metadata_drivers__entries__value',
|
||||
label=_('File metadata value')
|
||||
)
|
||||
|
||||
@@ -16,7 +16,9 @@ from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_multi_item, menu_object, menu_secondary,
|
||||
menu_setup
|
||||
)
|
||||
from mayan.apps.documents.search import document_page_search, document_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_page_search, document_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.documents.signals import post_document_type_change
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.events.links import (
|
||||
@@ -188,10 +190,18 @@ class MetadataApp(MayanAppConfig):
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
field='document_version__document__metadata__metadata_type__name',
|
||||
field='document__metadata__metadata_type__name',
|
||||
label=_('Metadata type')
|
||||
)
|
||||
document_page_search.add_model_field(
|
||||
field='document__metadata__value',
|
||||
label=_('Metadata value')
|
||||
)
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__metadata__metadata_type__name',
|
||||
label=_('Metadata type')
|
||||
)
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__metadata__value',
|
||||
label=_('Metadata value')
|
||||
)
|
||||
|
||||
@@ -12,7 +12,9 @@ from mayan.apps.common.classes import ModelField
|
||||
from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_multi_item, menu_secondary, menu_tools
|
||||
)
|
||||
from mayan.apps.documents.search import document_search, document_page_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_search, document_page_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.documents.signals import post_version_upload
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.navigation.classes import SourceColumn
|
||||
@@ -128,12 +130,14 @@ class OCRApp(MayanAppConfig):
|
||||
)
|
||||
|
||||
document_search.add_model_field(
|
||||
field='pages__ocr_content__content', label=_('OCR')
|
||||
field='versions__pages__ocr_content__content', label=_('OCR')
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
document_version_page_search.add_model_field(
|
||||
field='ocr_content__content', label=_('OCR')
|
||||
)
|
||||
#document_page_search.add_model_field(
|
||||
# field='ocr_content__content', label=_('OCR')
|
||||
#)
|
||||
|
||||
menu_facet.bind_links(
|
||||
links=(link_document_ocr_content,), sources=(Document,)
|
||||
|
||||
@@ -13,7 +13,9 @@ from mayan.apps.common.menus import (
|
||||
menu_facet, menu_list_facet, menu_main, menu_multi_item, menu_object,
|
||||
menu_secondary
|
||||
)
|
||||
from mayan.apps.documents.search import document_page_search, document_search
|
||||
from mayan.apps.documents.search import (
|
||||
document_page_search, document_search, document_version_page_search
|
||||
)
|
||||
from mayan.apps.events.classes import ModelEventType
|
||||
from mayan.apps.events.links import (
|
||||
link_events_for_object, link_object_event_types_user_subcriptions_list,
|
||||
@@ -133,9 +135,12 @@ class TagsApp(MayanAppConfig):
|
||||
)
|
||||
|
||||
document_page_search.add_model_field(
|
||||
field='document_version__document__tags__label', label=_('Tags')
|
||||
field='document__tags__label', label=_('Tags')
|
||||
)
|
||||
document_search.add_model_field(field='tags__label', label=_('Tags'))
|
||||
document_version_page_search.add_model_field(
|
||||
field='document_version__document__tags__label', label=_('Tags')
|
||||
)
|
||||
|
||||
menu_facet.bind_links(
|
||||
links=(link_document_tag_list,), sources=(Document,)
|
||||
|
||||
Reference in New Issue
Block a user