django-cms 中的简单搜索

问题描述

我正在尝试在 Django-cms 中实现一个简单的搜索(按 titledescription 搜索文章)。 description 字段是一个 Django-cms 占位符,我无法访问它的内容。有关如何执行此操作的任何建议?

模型:

class Article(models.Model):
    title = models.CharField(max_length=200)
    intro = models.TextField(max_length=300,blank=True)
    description = PlaceholderField('description')

视图:

from .models import Article
from django.db.models import Q

class ArticlesListView(generic.ListView):
    template_name = 'article/index.html'
    
    def get_queryset(self):
        search_string = self.request.GET.get('search',None)  

        #search within title
        #result = Article.objects.filter(Q(title__icontains=search_string)) # works as expected

        #search within title and content
        # error: "Related Field got invalid lookup: icontains"
        result = Article.objects.filter(Q(title__icontains=search_string) | Q(description__icontains=search_string)) 
            
        return result

(django 3.0.11,django-cms 3.7.4,Python 3.7.8)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)