0

我正在尝试在我的搜索结果页面上生成上传文档(PDF、DOC...等)的 url。搜索正在返回项目,但似乎没有 url 字段。有一个文件字段似乎有文件名,但我无法获得指向该文件的链接。我正在使用库存文档模型。是否需要像图像一样使用某种特殊标签?在我的智慧结束。

搜索视图

    if search_query:
    results = []
    page_results = Page.objects.live().search(search_query)
    if page_results:
        results.append({'page': page_results})
    doc_results = Document.objects.all().search(search_query)
    if doc_results:
        results.append({'docs': doc_results})
    img_results = Image.objects.all().search(search_query)
    if img_results:
        results.append({'image': img_results})
    search_results = list(chain(page_results, doc_results, img_results))
    query = Query.get(search_query)

    # Record hit
    query.add_hit()

和模板页面。

        {% for result in search_results %}
        {% for k, v in result.items %}
            {% if k == 'page' %}
                {% for item in v %}
                    <p>
                    <h4><a href="{% pageurl item %}">{{ item }}</a></h4>
                    Type: Article<br>
                    Author: {{ item.specific.owner.get_full_name }}<br>
                    Publish Date: {{ item.specific.last_published_at}} 
                    </p>
                {% endfor %}

            {% elif k == 'docs' %}
                {% for item in v %}
                    <p>
                    <h4><a href="">{{ item.title }}</a></h4>
                    Type: Document<br>
                    Publish Date: {{ item.created_at }}
                    </p>
                {% endfor %}
            {% elif k == 'image' %}
                {% for item in v %}
                    <p>
                        {% image item original as item_img %}
                    <h4><a href="{{ item_img.url }}" target="_blank">{{ item.title }}</a></h4>
                    Type: Image<br>
                    Publish Date: {{ item.created_at }}
                    </p>
                {% endfor %}
            {% endif%}
        {% endfor %}
    {% endfor %}
4

0 回答 0