简单的搜索引擎在Django。在html内容中搜索

问题描述:

如何创建简单的搜索引擎? 我有这样的事情:简单的搜索引擎在Django。在html内容中搜索

def search(request): 
    if 'search' in request.GET: 
     term = request.GET['search'] 
     if len(term) > 3: 
      d = Data.objects.filter(Q(content__contains=term) | Q(
       desc__contains=term)) 
      count = d.count() 
      return render_to_response('search_result.html', {'d': d, 'count': count}, context_instance=RequestContext(request)) 
    return render_to_response('search_result.html', context_instance=RequestContext(request)) 

这是确定的,如果我在模型中搜索,但我需要在HTML内容(我用的Django块)

Django的组块的数据是在模型stored太搜索。你可以导入并过滤它像任何其他模型

class Chunk(models.Model): 
    """ 
    A Chunk is a piece of content associated 
    with a unique key that can be inserted into 
    any template with the use of a special template 
    tag 
    """ 
    key = models.CharField(_(u'Key'), help_text=_(u"A unique name for this chunk of content"), blank=False, max_length=255, unique=True) 
    content = models.TextField(_(u'Content'), blank=True) 
    description = models.CharField(_(u'Description'), blank=True, max_length=64, help_text=_(u"Short Description")) 

    class Meta: 
     verbose_name = _(u'chunk') 
     verbose_name_plural = _(u'chunks') 

    def __unicode__(self): 
     return u"%s" % (self.key,) 

contains是,如果你有一个非常小的数据集来查询一个确定的方式。它只是发出一个LIKE查询,所以它不会很好地扩展。如果您要获得大量的数据,寻找专门为全文搜索而创建的引擎将是一个不错的主意。