在PyCharm中Django的文档字符串中未解析的引用

Den*_*nko 7 python django docstring pycharm python-3.x

我的Django项目中使用了像本例中的 Google Style Python Docstrings .当我创建一个类并在docstring中使用属性表示法时,Pycharm总是说 - "未解析的引用".

class Post(models.Model):
    """
    Class for posts.

    Attributes:
        title(str): Post title.
    """
    title = models.CharField(max_length=120)
Run Code Online (Sandbox Code Playgroud)

据我所知,PyCharm没有看到selftitledef __init__()功能,写这个错误,但在Django我从来没有见过使用def __init__()从继承类models.

我该怎么办?这是我的错误还是PyCharm在这种情况下看不到上下文?我应该使用def __init__()或其他什么或以其他方式编写docsting?

小智 6

PyCharm 目前似乎不支持此功能。JetBrains 问题跟踪器中对此的有效问题是https://youtrack.jetbrains.com/issue/PY-16760,请考虑对其进行投票以修复它。如果您想避免在文档字符串中看到这些“未解析的引用”错误,唯一的解决方法是在首选项 > 编辑器 > 检查 > 未解析的引用中禁用检查。

我过去尝试过的另一个选项是删除“属性:”标题,并在与文档字符串的其余部分相同的缩进级别上编写我的属性文档。这不再给您警告,但您不再 100% 符合 Google Docstring Style Guide。


小智 5

我通过在“属性:”后添加“# noqa”解决了这个问题,因为我不想禁用未解决的参考警告。

所以这将是最终的文档字符串:

"""
Class for posts.

Attributes:  # noqa
    title(str): Post title.
"""
Run Code Online (Sandbox Code Playgroud)