我对为什么我的交叉引用的目标是无法正常工作有些困惑。只有完整的路径似乎起作用。我有以下项目结构:
my_project
-my_project
-adapters
-adapter_base
-adapter_1
-adapter_2
-docs
-build
-source
-config.py
config.py
sys.path.insert(0, os.path.abspath('..'))
index.rst
.. toctree::
:maxdepth: 2
modules/the_api
modules.rst
Adapter Base
------------
.. automodule:: my_project.adapters.base
:members:
:inherited-members:
:show-inheritance:
Adapter 1
---------
.. automodule:: my_project.adapters.adapter_1
:members:
:inherited-members:
:show-inheritance:
adapter_1.py
class Adapter1(object):
pass
class Adapter1API(object):
def method_a(self):
"""the docs for this method_b"""
pass
def method_b(self):
"""the docs for this method
This works :func:`my_project.adapters.adapter_1.method_a`
No link :func:`method_a`
No link :func:`.method_a`
No link :func:`.adapter_1.method_a`
"""
您可以在method_b中看到,我尝试了4种方法来创建通向method_a的目标路径,只有完整路径有效。为什么其他三个都不知道吗?
令人尴尬的是,解决方案不是:meth:
而不是:func:
,我以某种方式错过了狮身人面像具有:meth:
指令的事实...