src/ldt/ldt/indexation/search_indexes.py
changeset 718 5e27a39d3742
child 950 f08d8b3e78b8
equal deleted inserted replaced
717:d66abfc1cb87 718:5e27a39d3742
       
     1 # -*- coding: utf-8 -*-
       
     2 '''
       
     3 Created on Jul 23, 2012
       
     4 
       
     5 @author: ymh
       
     6 '''
       
     7 
       
     8 from haystack import indexes
       
     9 from ldt.ldt_utils.models import Segment 
       
    10 from ldt.text.models import Annotation
       
    11 
       
    12 class SegmentIndex(indexes.RealTimeSearchIndex, indexes.Indexable):
       
    13     text = indexes.CharField(document=True, use_template=True)
       
    14     iri_id = indexes.CharField(model_attr='iri_id', indexed=False, stored=True)
       
    15     project_id = indexes.CharField(model_attr='project_id', indexed=False, stored=True, null=True)
       
    16     ensemble_id = indexes.CharField(model_attr='ensemble_id', indexed=False, stored=True)
       
    17     cutting_id = indexes.CharField(model_attr='cutting_id', indexed=False, stored=True)
       
    18     element_id = indexes.CharField(model_attr='element_id', indexed=False, stored=True)
       
    19     tags = indexes.CharField(model_attr='tags', stored=True)
       
    20     title = indexes.CharField(model_attr='title', stored=True)
       
    21     abstract = indexes.CharField(model_attr='abstract', stored=True)
       
    22     duration = indexes.IntegerField(model_attr='duration', indexed=False, stored=True)
       
    23     author = indexes.CharField(model_attr='author', stored=True, null=True)
       
    24     start_ts = indexes.IntegerField(model_attr='start_ts', indexed=False, stored=True)
       
    25     date = indexes.CharField(model_attr='date', stored=True)
       
    26     
       
    27     def get_model(self):
       
    28         return Segment
       
    29     
       
    30 class AnnotationIndex(indexes.RealTimeSearchIndex, indexes.Indexable):
       
    31     text = indexes.CharField(document=True, use_template=True)
       
    32     tags = indexes.CharField(model_attr='tags', indexed=True, stored=False)
       
    33     title = indexes.CharField(model_attr='title', indexed=True, stored=True)
       
    34     abstract = indexes.CharField(model_attr='description', indexed=True, stored=False)
       
    35     text_field = indexes.CharField(model_attr='text', indexed=True, stored=False)
       
    36     annotation_id = indexes.CharField(model_attr='extarnal_id', indexed=False, stored=True)
       
    37 
       
    38     def get_model(self):
       
    39         return Annotation
       
    40