首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么模板存在时rst2pdf会给出TemplateNotFound错误?

为什么模板存在时rst2pdf会给出TemplateNotFound错误?
EN

Stack Overflow用户
提问于 2019-05-02 17:41:52
回答 1查看 218关注 0票数 1

我正在使用rst2pdf库通过Sphinx生成一个PDF文档。然而,当我尝试这样做时,我得到了下面的错误:

代码语言:javascript
复制
[exec] sphinx-build -b pdf -d stage/doctrees   source/welcome stage/pdf
     [exec] Running Sphinx v1.8.5
     [exec] ['support/style']
     [exec] loading pickled environment... done
     [exec] building [mo]: targets for 0 po files that are out of date
     [exec] building [pdf]: targets for 4 source files that are out of date
     [exec] updating environment: 0 added, 0 changed, 0 removed
     [exec] looking for now-outdated files... none found
     [exec] processing WelcomeToRealtimeDespatch... 
     [exec] index 
     [exec] 01-introduction 
     [exec] 03-market 
     [exec] 05-administration 
     [exec] resolving references...
     [exec] done
     [exec] writing WelcomeToRealtimeDespatch... 
     [exec] FAILED
     [exec] build succeeded.
     [exec] 
     [exec] Build finished. The PDF files are in stage/pdf.
     [exec] /usr/local/lib/python2.7/dist-packages/rst2pdf/pdfbuilder.py:207: RemovedInSphinx20Warning: env.create_index() is deprecated. Use sphinx.environment.adapters.indexentreis.IndexEntries instead.
     [exec]   genindex = self.env.create_index(self)
     [exec] [ERROR] pdfbuilder.py:133 /home/catherine/workspace/rtd2/documentation/source/welcome/../../support/style/apicover.tmpl
     [exec] Traceback (most recent call last):
     [exec]   File "/usr/local/lib/python2.7/dist-packages/rst2pdf/pdfbuilder.py", line 130, in write
     [exec]     docwriter.write(doctree, destination)
     [exec]   File "/usr/local/lib/python2.7/dist-packages/docutils/writers/__init__.py", line 80, in write
     [exec]     self.translate()
     [exec]   File "/usr/local/lib/python2.7/dist-packages/rst2pdf/pdfbuilder.py", line 600, in translate
     [exec]     date=date
     [exec]   File "/usr/local/lib/python2.7/dist-packages/rst2pdf/createpdf.py", line 112, in renderTemplate
     [exec]     template =jinja_env.get_template(tname)
     [exec]   File "/usr/local/lib/python2.7/dist-packages/jinja2/environment.py", line 830, in get_template
     [exec]     return self._load_template(name, self.make_globals(globals))
     [exec]   File "/usr/local/lib/python2.7/dist-packages/jinja2/environment.py", line 804, in _load_template
     [exec]     template = self.loader.load(self, name, globals)
     [exec]   File "/usr/local/lib/python2.7/dist-packages/jinja2/loaders.py", line 113, in load
     [exec]     source, filename, uptodate = self.get_source(environment, name)
     [exec]   File "/usr/local/lib/python2.7/dist-packages/jinja2/loaders.py", line 168, in get_source
     [exec]     pieces = split_template_path(template)
     [exec]   File "/usr/local/lib/python2.7/dist-packages/jinja2/loaders.py", line 31, in split_template_path
     [exec]     raise TemplateNotFound(template)
     [exec] TemplateNotFound: /home/catherine/workspace/rtd2/documentation/source/welcome/../../support/style/apicover.tmpl

我可以确认模板位于以下路径:

代码语言:javascript
复制
ls -l /home/catherine/workspace/rtd2/documentation/source/welcome/../../support/style/apicover.tmpl
-rwxrwxrwx 1 catherine catherine 436 Feb 14  2018 /home/catherine/workspace/rtd2/documentation/source/welcome/../../support/style/apicover.tmpl

你知道为什么pdfbuilder可能找不到提供的模板吗?

EN

回答 1

Stack Overflow用户

发布于 2019-10-20 04:11:46

看起来rst2pdf现在禁止"..“在模板路径中,尝试标准化之前的路径,或者使用较旧版本的rst2pdf并向开发人员查询此路径背后的合理性。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55949641

复制
相关文章

相似问题

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