我正在尝试使用sphinx来记录我正在编写的django应用程序。到目前为止,我有我的code.rst设置来查看models.py,当我运行make html
时,我得到了自动文档,但是我收到了警告:
WARNING: autodoc can't import/find attribute 'myapp.models.MyModel.image', it reported error: "image", please check your spelling and sys.path
整个tracelog是:
Traceback (most recent call last):
File "C:\blah\lib\site-packages\sphinx\ext\autodoc.py", line 326, in import_object
obj = self.get_attr(obj, part)
File "C:\blah\lib\site-packages\sphinx\ext\autodoc.py", line 232, in get_attr
return safe_getattr(obj, name, *defargs)
File "C:\blah\lib\site-packages\sphinx\util\inspect.py", line 70, in safe_getattr
raise AttributeError(name)
AttributeError: image
MyModel.image
是一个图像字段,只是在定义为:
#: image file location for ``MyModel``
image = models.ImageField(upload_to="images/")
如果我将图像更改为models.Charfield
,例如它运行正常。 ImageField
会导致狮身人面像问题吗?
我的代码。第一次:
.. automodule:: dynamicbanners.models
:members:
答案 0 :(得分:0)
所以看完评论之后,这似乎是Django的怪癖与sphinx.ext.autodoc
混淆。希望很快就会将修复程序放到Django 1.6中,或者我认为即将推出的1.2版本的Sphinx可能会提供解决方法,但是现在我需要找到某种解决方法。
答案 1 :(得分:0)
看起来这已在Django 1.8中修复 - https://code.djangoproject.com/ticket/12568