在sphinx jinja2模板中,获取当前文档的路径

时间:2017-08-22 07:15:30

标签: jinja2 python-sphinx

我正在使用Sphinx和rST构建文档。文档已国际化并部署到这样的路径:

website.tld/en/index.html
website.tld/de/index.html

现在,在每个页面上,我都希望以不同语言提供指向同一页面的链接。当前语言作为language变量提供,所有语言的列表都明确添加到html_context,因此也可用。

我所挣扎的是每个文档的相对路径。比如说,./source/somepath/docname.rst有一个源文件。它建立在这些:

website.tld/en/somepath/docname.html
website.tld/de/somepath/docname.html

在Jinja2模板中,如何获得"somepath/docname.html"值?

1 个答案:

答案 0 :(得分:0)

突然之间,我在an answer找到了相关问题的解决方案:

<div class="carousel-inner">
                        <div class="item active">
                            <img src="app/images/rsz_clientsearch.jpg" class="img-responsive">
                            <div class="carousel-caption">
                                <h3>Desert</h3>
                                <p>Desert Image Description</p>
                            </div>
                        </div>
                        <div *ngFor="let app of apps;let i=index" class="item">
                            <a href="{{app.url}}">
                                <img src="app/images/{{app.imagePath}}" class="img-responsive">
                                <div class="carousel-caption">
                                    <h3>{{app.displayText}}</h3>
                                    <p>{{app.description}}</p>
                                </div>
                            </a>
                        </div>
                    </div>

                    <a href="#imageCarousel" class="carousel-control left" data-slide="prev">
                        <span class="glyphicon glyphicon-chevron-left"></span>
                    </a>
                    <a href="#imageCarousel" class="carousel-control right" data-slide="next">
                        <span class="glyphicon glyphicon-chevron-right"></span>
                    </a>

对于{{ pagename }} 的源文档,./source/somepath/docname.rst的值为pagename,这正是我所需要的。

此变量的the documentation