"Attempted relative import beyond top-level package"



当我想保存这个django文件时:

from django.urls import path
from . import views  
urlpatterns = [
path('', views.index)
]

我得到一个错误:

"试图在顶级包"之外进行相对导入;

我该怎么办?

将您对urlpatterns的分配更改为:

urlpatterns = [path('index/', views.index, name='main-view')]

一种可能性是,一些导入语法是特定于Django的,除非与Django一起安装,否则解释器(如pylint(无法识别这些语法,并且需要一些额外的工作。如果服务器可以工作,但编译器不允许您运行它,只需禁用您拥有的任何解释器或切换到另一个IDE即可。

但请记住,在Django应用程序中,它应该是这样的(而不是settings.py所在的主文件夹(:

|-app_name
|__ __init__.py
|__ admin.py
|__ apps.py
|__ models.py
|__ urls.py
|__ views.py

只要文件的结构是这样的,from . import views就应该可以工作。

相关内容

最新更新