python – Pylint – Pylint无法导入flask.ext.wtf?

我有我的Pylint安装导入烧瓶很好。同样的安装烧瓶,我已经在我的应用程序中运行得很好。但是,当我在导入wtforms的文件上运行Pylint时:

from flask.ext import wtf
from flask.ext.wtf import validators

class PostForm(wtf.Form):
    content = wtf.TextAreaField('Content', validators=[validators.Required()])

从Pylint我得到:

E:  1,0: No name 'wtf' in module 'flask.ext'
E:  2,0: No name 'wtf' in module 'flask.ext'
F:  2,0: Unable to import 'flask.ext.wtf'

在搜索周围,我发现this discussion表明可能是因为flask.ext库实际上只是“快捷方式”到库。

有什么想法可以解决这个问题吗?非常感谢

所以,这个文件实际上是一个自定义导入器,由Armin以令人敬畏的方式编写。它允许人们在单独的包中安装扩展,但以一致的方式导入它们。 (真的你应该去阅读代码吧,这太棒了)那就是说,显然pylint不喜欢优雅(这实际上是一个bug,在我看来),但你是运气好的。这样做的简单方法是做以下事情

import flask_wtf as wtf
# The above is the equivalent line as:
# from flask.ext import wtf
from flask_wtf import validators
# This is the same as:
# from flask.ext.wtf import validators

这应该让pylint开心。它不如使用flask.ext,但你必须选择关闭pylint或使用优雅的代码,但你不能同时拥有(现在)。

http://stackoverflow.com/questions/16061514/pylint-pylint-unable-to-import-flask-ext-wtf

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:python – Pylint – Pylint无法导入flask.ext.wtf?