You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django项目导入包时报TypeError: unhashable type: 'Path'求助

TypeError: unhashable type: 'Path' when importing any package in Django urls.py

编辑补充:已将问题范围缩小至Django REST Framework,但暂未明确根因,即将开始深度包调试。

搭建的小型Django项目中,只要在urls.py文件里执行任何from package import X导入操作,就会触发TypeError: unhashable type: 'Path'异常。如果该文件没有任何导入语句,项目能正常运行、服务器也能正常启动。

错误栈信息如下:

File "/app/app/urls.py", line 2, in <module>
2023-01-21T04:41:15.890469838Z     from rest_framework.response import Response
2023-01-21T04:41:15.890486088Z   File "/usr/local/lib/python3.8/site-packages/rest_framework/response.py", line 11, in <module>
2023-01-21T04:41:15.890490338Z     from rest_framework.serializers import Serializer
2023-01-21T04:41:15.890492504Z   File "/usr/local/lib/python3.8/site-packages/rest_framework/serializers.py", line 27, in <module>
2023-01-21T04:41:15.890516629Z     from rest_framework.compat import postgres_fields
2023-01-21T04:41:15.890534421Z   File "/usr/local/lib/python3.8/site-packages/rest_framework/compat.py", line 33, in <module>
2023-01-21T04:41:15.890571546Z     import coreapi
2023-01-21T04:41:15.890591004Z   File "/usr/local/lib/python3.8/site-packages/coreapi/__init__.py", line 2, in <module>
2023-01-21T04:41:15.890598088Z     from coreapi import auth, codecs, exceptions, transports, utils
2023-01-21T04:41:15.890600588Z   File "/usr/local/lib/python3.8/site-packages/coreapi/auth.py", line 1, in <module>
2023-01-21T04:41:15.890602963Z     from coreapi.utils import domain_matches
2023-01-21T04:41:15.890605254Z   File "/usr/local/lib/python3.8/site-packages/coreapi/utils.py", line 5, in <module>
2023-01-21T04:41:15.890724213Z     import pkg_resources
2023-01-21T04:41:15.890736088Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3249, in <module>
2023-01-21T04:41:15.891071296Z     def _initialize_master_working_set():
2023-01-21T04:41:15.891081671Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3223, in _call_aside
2023-01-21T04:41:15.891363838Z     f(*args, **kwargs)
2023-01-21T04:41:15.891371088Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 3261, in _initialize_master_working_set
2023-01-21T04:41:15.891722921Z     working_set = WorkingSet._build_master()
2023-01-21T04:41:15.891733421Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 608, in _build_master
2023-01-21T04:41:15.891780379Z     ws = cls()
2023-01-21T04:41:15.891790796Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 601, in __init__
2023-01-21T04:41:15.891883463Z     self.add_entry(entry)
2023-01-21T04:41:15.891889546Z   File "/usr/local/lib/python3.8/site-packages/pkg_resources/__init__.py", line 655, in add_entry
2023-01-21T04:41:15.892080713Z     self.entry_keys.setdefault(entry, [])
2023-01-21T04:41:15.892097713Z TypeError: unhashable type: 'Path'

复现步骤

  • 在services/shared/目录下创建.env文件,内容如下:
POSTGRES_PASSWORD=ai
POSTGRES_USER=ai
POSTGRES_DBNAME=ai
POSTGRES_HOST=postgres-ai
POSTGRES_TEST=test_ai

SECRET_KEY=%&jxaf6ijs36d82@r+^hq%=d7w8*2)r9afv*z@5y=(vt$h38m5
REGISTRATION_SALT=sx<)XYH.G0\"3GhqGLfY7~3Nt'63\"Yp
DJANGO_DEBUG=True
DEBUG_DB=True

ALLOWED_HOSTS=*
CORS_ORIGIN_WHITELIST=http://0.0.0.0
CORS_ALLOWED_ORIGINS=http://0.0.0.0
WEB_SERVER=app.myapp.co
WEB_APP_URL=app.myapp.co

EMAIL_URL=
AXES_BEHIND_REVERSE_PROXY=off

SITE_ID=3

ACCESS_TOKEN_EXPIRE_SECONDS=600

SUPPORT_EMAIL=

ACCOUNT_ACTIVATION_DAYS=2

SENTRY_ID=
SENTRY_ENDPOINT=
SENTRY_ENVIRONMENT=SomeEnv

MAX_IMAGE_UPLOAD_SIZE_BYTES=10000000

# Application environment settings
APP_ENV=local
APP_USE_AWS_S3_STATIC=False
APP_USE_AWS_S3_MEDIA=False

SSL_CERT_CHAIN=ssl\/local.crt
SSL_CERT_KEY=ssl\/local.key
SSL_CERT_DHPARAM=ssl\/dhparams.local.pem
  • 执行make up启动项目

这是首次尝试跨独立容器服务共享Django代码,此前从未遇到该问题。目前观察到coreapi相关环节出现错误,无论导入什么包,最终都会触发pkg_resources导入失败,暂未明确原因,恳请各位提供帮助。

内容的提问来源于stack exchange,提问作者Trent

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 22:55:16