【问题标题】:"Attempted relative import beyond top-level package"“尝试相对导入超出顶级包”
【发布时间】:2020-11-03 14:56:33
【问题描述】:

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

from django.urls import path
from . import views  

urlpatterns = [
    path('', views.index)
]

我收到一个错误:

“尝试相对导入超出顶级包”

我该怎么处理它?

【问题讨论】:

    标签: python django


    【解决方案1】:

    将您的作业更改为urlpatterns

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

    【讨论】:

      【解决方案2】:

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

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

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

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

      【讨论】:

        猜你喜欢
        • 2017-02-22
        • 2020-04-06
        • 2016-05-12
        • 1970-01-01
        • 2020-03-07
        • 2021-10-03
        • 2020-12-03
        相关资源
        最近更新 更多