Как удалить кэш сборки при сборке документов с помощью WebSupport.Build в sphinx? - PullRequest
0 голосов
/ 10 мая 2018

Есть ли способ удалить кэш сборки при использовании WebSupport.build как в make clean в Sphinx? Мне нужно удалить кэш сборки, потому что, если изображение с тем же именем, но с другим содержимым изображения создается один или несколько раз с использованием WebSupport.build, будет отображаться одно и то же старое изображение до тех пор, пока не будет изменено имя изображения.

Я использую Websupport.build для создания документов из rst формата, например:

from sphinxcontrib.websupport import WebSupport
support = WebSupport(srcdir=srcdir, builddir=builddir,search="xapian")
support.build()
document= support.getdocument("index")

и визуализировать соответственно в flask приложении

со следующим jinja шаблоном:

{% extends 'baselayout.html' %}

{% block doc_sidebar %}
    {{ document.sidebar|safe }}
{% endblock %}

{% block doc_content %}
    {{ document.body|safe }}
{% endblock %}

1 Ответ

0 голосов
/ 15 мая 2018

Это решение, которое я нашел, работает для меня: удаление builddir, если оно существует только для удаления предыдущей сборки.

import os
import shutil
from sphinxcontrib.websupport import WebSupport

def build_doc(srcdir, builddir):
    if os.path.exists(builddir):
        shutil.rmtree(builddir)
    support = WebSupport(srcdir=srcdir, builddir=_builddir,search="xapian")
    support.build()

Спасибо всем !!!

...