Rei*_*ees 6 django python-sphinx
使用适当的intersphinx设置,您可以从您自己的文档链接到Django类,如下所示:
:class:`django:django.db.models.Model`
Run Code Online (Sandbox Code Playgroud)
但是你如何链接到一个设置?Django使用自己的:setting:构造而不是内置的东西:class:.如何使用intersphinx链接到设置?
我尝试过各种各样的咒语,但都没有用(有些可能是错误的):
:ref:`django:ROOT_URLCONF`
:ref:`django:root_urlconf`
:setting:`django:ROOT_URLCONF`
:ref:`django:setting:ROOT_URLCONF`
:django:setting:`ROOT_URLCONF`
Run Code Online (Sandbox Code Playgroud)
错误喜欢undefined label: django:root_urlconf和Unknown interpreted text role "setting"问候我.
问题是:我当地的狮身人面像并不知道Django的自定义狮身人面像角色,比如setting.所以这是一个非常精细的intersphinx参考:
:django:setting:`ROOT_URLCONF`
Run Code Online (Sandbox Code Playgroud)
在你告诉Sphinx关于intersphinx目标的自定义角色之前不行.
最后通过从Django的sphinx扩展中复制一个小片段作为_ext/djangodocs.py我的文档旁边的工作:
def setup(app):
app.add_crossref_type(
directivename = "setting",
rolename = "setting",
indextemplate = "pair: %s; setting",
)
Run Code Online (Sandbox Code Playgroud)
我将以下内容添加到我的Sphinx中conf.py:
import os
import sys
...
sys.path.append(
os.path.abspath(os.path.join(os.path.dirname(__file__), "_ext")))
# ^^^ I'll do that neater later on.
extensions = ['djangodocs',
# ^^^ I added that one.
'sphinx.ext.autodoc',
...
]
...
Run Code Online (Sandbox Code Playgroud)
所以:intersphinx可以工作,但是如果你指向一个自定义角色,你需要在本地定义该自定义角色.
| 归档时间: |
|
| 查看次数: |
1585 次 |
| 最近记录: |