Sphinx报错:未知解释文本角色“method”,如何正确跨引用方法?
解决Sphinx跨引用方法时的"Unknown interpreted text role 'method'"错误
这个问题我之前也碰到过!你之所以会收到这个报错,是因为Sphinx没有内置:method:这个文本角色,它专门用来引用方法的内置角色是:meth:。
只需要把文档字符串里的写法调整一下就行:
原写法:
This method uses :method:`~app1.forms.other_method` to do other thing.
修改为正确写法:
This method uses :meth:`~app1.forms.other_method` to do other thing.
额外实用小技巧:
- 如果
other_method和当前方法在同一个模块里,可以简化路径,写成:meth:~.other_method``,波浪号~的作用是让最终生成的文档只显示方法名,而非完整模块路径,看起来更清爽。 - 如果
other_method属于另一个类(比如OtherClass),要写成:meth:~app1.forms.OtherClass.other_method``,确保Sphinx能准确定位到目标方法。
改完之后重新运行make html,这个错误应该就消失啦!
内容的提问来源于stack exchange,提问作者NBajanca
相关产品推荐
相关产品推荐

