首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >页面名称将应用于搜索视图,但不显示搜索结果

页面名称将应用于搜索视图,但不显示搜索结果
EN

Stack Overflow用户
提问于 2020-07-10 08:55:06
回答 1查看 19关注 0票数 0

问:页面国家应用于搜索视图,但不显示搜索结果

该视图的内容如下。

代码语言:javascript
复制
    if(search_option == "content+title"):
        print("search bycontent and title =================")
        page = request.GET.get('page', '1')
        object_list = MyShortCut.objects.filter(Q(author = user)).filter(Q(title__icontains=search_word) | Q(content1__icontains=search_word) | Q(content2__icontains=search_word)).order_by('-category')
        print('object_list(count)  :::::::::: ' , object_list.count() ) 
        paginator = Paginator(object_list, 10)  # 10 per page
        page_obj = paginator.get_page(page)
        print("page_obj ::::::::::::: ", page_obj)
        context = {'object_list': page_obj}

        return render(request, 'wm/MyShortCut_list_for_search.html', {
            "question_list":page_obj
        })

模板代码为:

代码语言:javascript
复制
    <!-- <table class="table table-borderd"> -->

    search result:
    <table border="1" width="100%">
        <tr>
            <td>num</td>
            <td>category</td>
            <td>title 22</td>
            <td>name</td>
        </tr>
        <tbody>
        {% if object_list.exists %}
            {% for p in object_list %}
                <tr>
                    <td>
                        {{ forloop.counter }}
                    </td>
                    <td>
                        <a href="/wm/myshortcut/category/{{p.category}}/">
                            {{p.category}}
                        </a>
                    </td>
                    <td>
                        {{p.title}}
                        <a href="#wm_detail_{{p.id}}" class="badge badge-dark" data-toggle="collapse">detail</a>
                        {% ifequal p.type.type_name "input" %}
                        <br />
                        <input type="text" id="wm_detail_{{p.id}}" class="collapse " value="{{p.content1}}" size="100%" />
                        {% endifequal %}

                        {% ifequal p.type.type_name "textarea" %}
                        <br />
                        <textarea id="wm_detail_{{p.id}}" class="collapse" cols="100" rows="10">{{p.content2}}</textarea>
                        {% endifequal %}

                        {% ifequal p.type.type_name "summer_note" %}
                        <br />
                        <div id="wm_detail_{{p.id}}" class="collapse" width="100%">{{p.content2 | safe}}</div>
                        {% endifequal %}

                    </td>

                    <td>
                        <a href="" onclick="change_user_for_search(this)" id={{p.author}}>
                            {{p.author}}
                        </a>
                    </td>
                </tr>
            {% endfor %}
        {% else %}
            <tr>
                <td colspan="4">
                    <h4>there is no search results</h4>
                </td>
            </tr>
        {% endif %}

        </tbody>
    </table>

    {% for page_number in question_list.paginator.page_range %}
    <!-- ---------------------------------------- [edit] ---------------------------------------- -->
    {% if page_number >= question_list.number|add:-5 and page_number <= question_list.number|add:5 %}
    <!-- ---------------------------------------------------------------------------------------- -->
    {% if page_number == question_list.number %}
    <li class="page-item active" aria-current="page">
        <a class="page-link" href="?page={{ page_number }}">{{ page_number }}</a>
    </li>
    {% else %}
    <li class="page-item">
        <a class="page-link" href="?page={{ page_number }}">{{ page_number }}</a>
    </li>
    {% endif %}
    <!-- ---------------------------------------- [edit] ---------------------------------------- -->
    {% endif %}
    <!-- ---------------------------------------------------------------------------------------- -->
    {% endfor %}

输出为:

你能知道问题出在哪里吗?

可能是视图问题或模板问题?

我将感谢你的回复。

谢谢你让我知道如何修复它。

祝您今天愉快

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-10 09:56:23

向html提供context - question_list而不是object_list,并在html中检查{% if object_list.exists %}

代码语言:javascript
复制
    context = {'object_list': page_obj}

    return render(request, 'wm/MyShortCut_list_for_search.html', {
        "question_list":page_obj
    })

更改为

代码语言:javascript
复制
return render(request, 'wm/MyShortCut_list_for_search.html', context)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62825810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档