我正在创建一个简单的烧瓶应用程序。我正在使用蓝图提供视图和OpenID进行登录。当我尝试使用视图解释器引发创建错误将创建的OpenID对象导入文件时,我已经遇到了问题。

Traceback (most recent call last):
  File "/.../ProgList/ProgList.py", line 11, in <module>
    from views_admin import views as views_a
  File "/.../ProgList/views_admin.py", line 4, in <module>
    from ProgList import open_id
  File "/.../ProgList/ProgList.py", line 11, in <module>
    from views_admin import views as views_a
  ImportError: cannot import name 'views'




ProgList.py

# importing VIEWS
from views import views
from views_admin import views as views_a
...
open_id = OpenID(app, 'temp_dir_path')




views_admin.py

from ProgList import open_id
...
@views.route("/login", methods=["GET", "POST"])
@open_id.loginhandler
def login():




我已经为这个问题苦苦挣扎了好几个小时,找不到答案。
非常感谢您的帮助。

最佳答案

ProgList中,导入views_admin,在views_admin中,导入ProgList。这无法解决。这里的典型方法是将某些内容外包给第三个文件,这两个文件都可以安全地访问而不会互相干扰。从外观上看,您可能希望将open_id移到另一个文件中。

10-05 21:46