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

Django3.1无法将应用views导入项目urls文件问题求助

你遇到的导入报错本质不是导入语句的问题,是项目内多个文件存在语法错误、缩进错误,Python加载newapp模块时执行内部代码失败,就会表现为views无法导入。以下是所有需要修正的点:

  • 先确认目录结构符合要求:newapp文件夹要和项目根目录的manage.py同级,且newapp文件夹下存在空的__init__.py文件,保证Python能将其识别为可导入的包。
  • 修正newapp/models.py的缩进错误:原代码中last_name、email字段没有缩进在User类内部,属于全局变量,会触发模型定义错误,修正后代码:
from django.db import models

class User(models.Model):
    first_name = models.CharField(max_length=128)
    last_name = models.CharField(max_length=128)
    email = models.EmailField(max_length=256, unique=True)
  • 修正newapp/urls.py的导入错误:原代码错误从models模块导入views,views是同级的独立文件,应该从当前包导入,同时Django 3.1推荐用path替代旧的url方法,修正后代码:
from django.urls import path
from . import views

urlpatterns = [
    path('', views.users, name='users'),
]
  • 修正newproject/urls.py的语法错误:原代码中urlpatterns前有多余缩进,name="users"是HTML转义字符错误,替换为正常双引号即可,修正后代码:
from django.contrib import admin
from django.urls import path, include
from newapp import views

urlpatterns = [
    path('', views.index, name='index'),
    path('users/', views.users, name="users"),
    path('admin/', admin.site.urls),
    # 如需挂载newapp下的urls配置,可增加下面这行
    # path('newapp/', include('newapp.urls')),
]

所有错误修正完成后,在manage.py所在的根目录运行python manage.py check,如果没有报错说明模块可以正常导入,再启动服务即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 13:06:04