【问题标题】:'EntryPoints' object has no attribute 'get' - Digital ocean\'EntryPoints\' 对象没有属性 \'get\' - 数字海洋
【发布时间】:2022-10-04 16:28:36
【问题描述】:

我已经对 Digitalocean 进行了部署,在暂存(Heroku 服务器)上,该应用程序运行良好,但是 Digital Ocean 失败并出现以下错误,可能是什么问题:

AttributeError at /admin/
'EntryPoints' object has no attribute 'get'
Request Method: GET
Request URL:    https://xxxx/admin/
Django Version: 3.1
Exception Type: AttributeError
Exception Value:    
'EntryPoints' object has no attribute 'get'
Exception Location: /usr/local/lib/python3.7/site-packages/markdown/util.py, line 85, in <module>
Python Executable:  /usr/local/bin/python
Python Version: 3.7.5
Python Path:    
['/opt/app',
 '/usr/local/bin',
 '/usr/local/lib/python37.zip',
 '/usr/local/lib/python3.7',
 '/usr/local/lib/python3.7/lib-dynload',
 '/usr/local/lib/python3.7/site-packages',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf',
 '/usr/local/lib/python3.7/site-packages/odf']
Server time:    Sun, 02 Oct 2022 21:41:00 +0000

【问题讨论】:

  • 你可以在这里粘贴markdown来源的url吗?

标签: python django digital-ocean


【解决方案1】:

因为importlib-metadata 昨天发布了 v5.0.0,它删除了已弃用的端点。

你可以在你的 setup.py 中设置importlib-metadata&lt;5.0,这样它就不会安装最新版本。

欲了解更多信息:https://importlib-metadata.readthedocs.io/en/latest/history.html

【讨论】:

  • 这行得通,谢谢。我注意到importlib-metadata 在错误的堆栈跟踪中,并决定尝试您的解决方案。
  • 我仍然对 setup.py 感到困惑,因为我正在使用带有 requirements.txt 的 Django,这是应该设置 importlib-metadata==4.13.0 的地方吗?
  • 它终于奏效了
  • 这在使用 xarray.open_dataset() 时也会产生问题
【解决方案2】:

我在 Google App Engine 上运行 Django 并遇到了同样的错误。

我查了源码,发现错误发生在一个内置的python函数中。

我更新到 Python 3.9 并解决了错误。

我最初使用的是 python 3.7。

我不知道这是否有帮助,但仅供参考。

【讨论】:

    【解决方案3】:

    我正在使用 Github Actions 运行 CI,它仅在 Python 3.7 中失败,出现相同的错误:AttributeError: 'EntryPoints' object has no attribute 'get',调用时:

    xarray.open_dataset('filename.nc')
    

    其中xarray 版本是xarray-0.20.2。

    蟒蛇 3.8、3.9、3.10似乎是不受影响.

    xarray 过去似乎受到了一些后端问题的影响:https://github.com/pydata/xarray/issues/5944

    【讨论】:

      【解决方案4】:

      因为 importlib-metadata 昨天发布了 v5.0.0,它删除了已弃用的端点。

      您可以在 require.py 中设置 importlib-metadata<5.0,这样它就不会安装最新版本。

      importlib-metadata==4.13.0

      欲了解更多信息:https://importlib-metadata.readthedocs.io/en/latest/history.html

      【讨论】:

        猜你喜欢
        • 2012-07-24
        • 1970-01-01
        • 2021-08-21
        • 2014-04-28
        • 2015-04-15
        • 2015-10-19
        • 2021-11-16
        • 2015-10-27
        • 1970-01-01
        相关资源
        最近更新 更多