DRF文档说一旦设置了异常处理程序,就需要在中定义它设置.py
REST_FRAMEWORK = {
'EXCEPTION_HANDLER': 'my_project.my_app.utils.custom_exception_handler'
}
我的Django项目布局如下:
^{pr2}$该项目称为后端,应用程序名为connectivity_服务自定义404错误消息.py文件包含处理异常的函数自定义异常处理程序。在
我的设置.py看起来像这样:
REST_FRAMEWORK = {
'EXCEPTION_HANDLER': 'backend.connectivity_service.utils.Custom404ErrorMessage'
}
但是,这会给我显示以下错误消息:
ImportError: Could not import 'backend.connectivity_service.utils.Custom404ErrorMessage'
for API setting 'EXCEPTION_HANDLER'. ModuleNotFoundError: No module named
'backend.connectivity_service'.
我做错什么了?在
我的猜测是,在将DRF example转换为代码时,您混淆了文本。文件规定:
然后它会告诉您将其添加到您的设置中:
^{pr2}$请记住,上面的示例具有以下文件夹结构:
“我的项目”>;“我的应用程序”>;“实用工具”>;“自定义异常”处理程序
也就是说:
我的项目文件夹>我的应用文件夹;实用工具.PY>;用于处理异常的已定义函数的名称
我想你就是这样搞糊涂的。因此,您将
Custom404ErrorMessage.py
放在utils_文件夹中,并尝试导入该文件夹而不是定义的函数本身。当然,除非Custom404ErrorMessage.py
是一个类,但我对此表示怀疑,因为您似乎在遵循使用函数的链接DRF示例。在我想你的客户404错误消息.py包含以下内容:
所以对于你的设置,你的设置.py将如下所示:
看最后一部分是如何定义函数的?希望有帮助!在
我也有这个问题,你需要解决的是:
相关问题 更多 >
编程相关推荐