Python Sphinx autodoc-装饰器和ReadTheDocs

Python Sphinx autodoc-装饰器和ReadTheDocs,python,python-sphinx,python-decorators,read-the-docs,autodoc,Python,Python Sphinx,Python Decorators,Read The Docs,Autodoc,我在使用autodoc使用Sphinx自动生成文档时遇到了一些问题。我的问题基本上与这里相同: 当我在函数上使用decorator时,文档中显示的签名就是decorator的签名。按照上面线程的说明,我将@decorator decorator放在我的decorator定义中,它确实解决了这个问题 现在,我已经将我的项目连接到ReadTheDoc.org上,它运行得非常好,唯一的问题是装饰器问题没有经过之前的修复就回来了 我对Sphinx很陌生,所以我不确定这是否值得在RTD Github项目上

我在使用autodoc使用Sphinx自动生成文档时遇到了一些问题。我的问题基本上与这里相同:

当我在函数上使用decorator时,文档中显示的签名就是decorator的签名。按照上面线程的说明,我将@decorator decorator放在我的decorator定义中,它确实解决了这个问题

现在,我已经将我的项目连接到ReadTheDoc.org上,它运行得非常好,唯一的问题是装饰器问题没有经过之前的修复就回来了

我对Sphinx很陌生,所以我不确定这是否值得在RTD Github项目上产生一个问题。我会错过什么?看到一个坏掉的签名吗

这可能是一种配置吗?我用Python3构建文档

另外,如果模块不可用,我定义了一个虚拟的
@decorator
,如下所示:

try:
    from decorator import decorator
except ImportError:
    def decorator(f):
        return f

您可以在RTD中添加
requirements.txt
文件,并在该文件中指定与本地环境完全相同的环境

当然包括
sphinx
,因为RTD使用
sphinx==1.6.5
。该版本可能与您的不同。

根据您的,RTD上未安装


您必须在包中指定decorator作为依赖项,或者将其添加到RTD需求文件
requirements.txt

我在本地使用Sphinx=1.3.6。我已经尝试在我的需求文件中强制执行该版本,但没有成功。我目前有两个要求:sphinx\u rtd\u theme>=0.3.1 sphinx==1.3.6您需要在项目设置中指定
requirements.txt
的位置。是的,我指定了。在构建过程中会考虑它。我之前设置了sphinx_rtd_主题来修复另一个问题(),它成功了,所以这部分看起来不错。您在本地安装了吗?接下来,您是否在包或RTD
requirements.txt中将decorator指定为依赖项?RTD没有按照您的要求安装它。我确实在本地安装了decorator模块,但我不记得安装过它,我假设它是Python标准包的一部分。我确实把它添加到requirements.txt文件中,它解决了这个问题!我把我的评论变成了下面的答案。请接受它作为解决方案。非常感谢。如果答案解决了你的问题,请别忘了也投票表决。