【问题标题】:Dash duplicate paths issue破折号重复路径问题
【发布时间】:2022-11-22 19:16:16
【问题描述】:

我正在开发破折号应用程序,但出现此错误。 我还没有在 stackoverflow 上找到与此问题相关的任何内容。

异常:模块 ['pages..ipynb_checkpoints.app_Km-checkpoint', 'pages.app_Km'] 有重复的路径

【问题讨论】:

  • 您能否就错误的来源提供更多解释?

标签: python plotly-dash


【解决方案1】:

你使用破折号多页插件吗?你能提供你的代码和项目结构吗?

  • 我自己也遇到过类似的错误。我正在使用破折号 多页插件,破折号版本 2.6.2

  • 我的问题是我从不同的地方运行我的应用程序 PYTHONPATH 比我的 app.py 在哪里 - 因为我的应用程序结构 看起来像用于部署目的。

  • 我的应用程序结构是(简化):

.
└── dash_app
    ├── app.py
    ├── callback_extensions
    │   └── login_callbacks.py
    └── pages
        ├── afterlogin.py
        ├── login.py
        └── page1.py
  • PYTHONPATH(路径,Python 查找模块的位置)设置为项目的根目录(一个目录到 /dash_app 目录,其中 app.py - DASH 对象被实例化)

dash_app/pages/afterlogin.py 文件中,我正在注册一个新页面:

dash.register_page(__name__)

  • 然后,我将一个变量从 afterlogin.py 导入到另一个脚本 dash_app/callback_extensions/login_callbacks.py

  • 我收到以下异常并且应用程序未加载:

Exception: modules ['dash_app.pages.afterlogin', 'pages.afterlogin'] have duplicate paths

删除 afterlogin.py 文件中的导入时,问题已解决。我的猜测是在 .ipynb_checkpoints 中存在一个对页面 app_Km.py 的引用,它具有不同的路径(就像在我的情况下,模块是相同的,但它有不同的引用),这会产生“冲突”并且 DASH 将其评估为不同的模块,而实际上它只是对同一个模块的引用。

建议:

  • 您是否从其他地方的 app_Km.py 导入了一些东西?
  • 您是否尝试完全删除 .ipynb_checkpoints(您是否使用 Jupyter notebook 来运行您的项目?)

我希望这有帮助。

【讨论】:

    猜你喜欢
    • 2020-11-18
    • 1970-01-01
    • 2015-05-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-25
    • 2023-03-20
    • 2016-04-19
    • 2011-05-10
    相关资源
    最近更新 更多