【问题标题】:No name 'routes' in module 'app'pylint(no-name-in-module)模块“app”pylint(模块中没有名称)中没有名称“路由”
【发布时间】:2019-12-26 10:13:14
【问题描述】:

我有一个文件“init.py”里面有这个代码

from flask import Flask 
app = Flask(__name__) 
from app import routes 

在“routes.py”中我有这个代码

from app import app
@app.route('/')
@app.route('/index')
def index():
    user = 'Cala'
return render_template('index.html', user=user) 

在第 3 行的第一个文件中说

模块“app”pylint(no-name-in-module) 中没有名称“路由”

在第一行的第二个文件中说

无法导入“应用”pylint(import-error)

有人知道问题出在哪里吗?我是第一次这样做吗?这可能很简单,或者全都错了。谢谢

【问题讨论】:

  • 您可以在导入时将route.py 文件重命名为routes.py 或将routes 更改为route
  • 抱歉文件是 routes.py 在我的问题中是一个错误
  • 尝试将from app import routes更改为from api.routes import *
  • Unable to import 'api.routes
  • 另外,你有没有把你的两个文件都放在 app 目录下?

标签: python flask import python-import importerror


【解决方案1】:

您的问题是您没有将两个文件都放在app 目录中,因为您使用的是__init__.py 文件。在执行from app import app 时,它会搜索app 目录或app.py 文件(如果未找到目录)。如果找到目录,它会在 __init__.py 文件中搜索 app 变量。

【讨论】:

  • 那我该怎么办?创建一个app目录并将init.py文件放在里面?我不确定我必须做什么。我是这方面的初学者。
  • 您可以通过多种方式进行操作,但我建议创建一个app 目录,将两个文件都放在那里,然后在该目录之外创建一个run.py 文件。在run.py 中,您将拥有from app import appapp.run()。之后,您应该可以使用 python run.py 运行您的应用程序
  • 现在 routes.py 不会显示错误,只有当我在终端 No module named 'app' 和 run.py 中运行时,init 文件才会显示我 Unable to import 'app'
  • 您应该有一个项目目录,其中包含app 目录和run.py 文件。在app 目录中,您应该有__init__.py 文件和routes.py 文件。您将 __init__.pyroutes.py 文件的代码与问题中的代码相同。我复制了这些步骤,一切正常。注意:你还应该在routes.py中导入render_template函数
  • 路由文件没有完成,但是我运行 run.py 并执行到路由文件,可能我的问题已经解决了,我只需要完成 routes.py
猜你喜欢
  • 2018-09-04
  • 1970-01-01
  • 1970-01-01
  • 2019-11-05
  • 2020-07-14
  • 2022-01-26
相关资源
最近更新 更多