django 有什么好方法对tags 的标题按字排序?
class Tags(models.Model): name = models.CharField(_(u'标签'), max_length=255)
excerpt = models.TextField(_(u'简介'))
class Topic(models.Model):
title = models.CharField(_(u'标题'), max_length=255)
body = models.TextField(_(u'内容'))
tags = models.ManyToManyField('Tags', verbose_name = _(u'标签'), blank = True)
如果tags 都是词语,如:高高兴兴 高大 很高 趾高气扬 高见 发高烧 挑高球 三高 升高 对应: tags.name
topic是单个字:高 对应:topic.title
怎么样 给tags 排序 分别挑出 高(topic.title) 开头的词 , 高在中间的词, 高在末尾的词?
如下代码是想挑出 字高 开头的词语。并不成功!!
tagslist = topic.tags.all() index_list = []
for a, b in enumerate(tagslist):
if str(b).find(str(topic.title))==0:
index_list.append(b)
context['index_list'] = index_list
差不多就是要实现下面这个功能
有什么好办法实现吗?
回答:
倒排索引,比如mysql的fulltext index或者postgresql的gin index都行。
以上是 django 有什么好方法对tags 的标题按字排序? 的全部内容, 来源链接: utcz.com/a/158029.html