如何修复 urls.py 中的 'attempted relative error'

How to fix 'attempted relative error' in my urls.py

项目 一种 urls.py b views.py

情况是这样的。 我无法从 urls.py 中的 views.py 导入函数。它显示错误尝试相对导入超出顶级包。

from django.contrib import admin

from django.urls import path

from ..b.views import function


urlpatterns = [
    path('admin/', admin.site.urls),
    path('function/', function),]

from ..b.views 导入函数 ValueError:尝试相对导入超出顶级包

确保要导入的模块或引用在您的 python 程序的路径中。要包含高阶字典,请尝试:

import sys
sys.path.append("..") # Adds higher directory to python modules path.

您可能会在这里找到答案Whosebug: ValueError: attempted relative import beyond top-level package

编辑:其他评论建议您不应使用相对导入。

在django中,不推荐使用相对导入。您应该导入所有文件,因为它们存在于 django 项目的根目录中。例如,对于您的情况,它应该是:

from b import views

您可以使用

from b.views import function