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

Django中urls.py导入pages应用失败问题求助

Django导入pages应用模块报错问题解决

项目目录结构

  • Learning
    • innit.py
    • settings.py
    • urls.py
    • wsgi.py
  • pages
    • innit.py
    • admin.py
    • apps.py
    • models.py
    • tests.py
    • views.py

views.py 代码

from django.shortcuts import render
from django.http import HttpResponse

def home_view(*args,**kwargs):
    return HttpResponse("<h1>Hello World, (again)!</h1>")

urls.py 代码

from django.contrib import admin
from django.urls import path
from pages.views import home_view


urlpatterns = [
    path("", home_view, name = "home"),
    path('admin/', admin.site.urls),
]

问题描述

from pages.views import home_view 中的pages.views下方出现黄/橙色波浪线,系统无法识别pages包/应用,尽管pages目录下有innit.py仍无法导入。尝试过相对导入from ..pages.views import home_view执行失败报错,修改项目根目录也导致views.py导入出现问题。

问题原因及解决方法

核心问题是初始化文件名拼写错误:Python要求包目录必须包含__init__.py(前后各两个下划线)才能被识别为可导入的包,你把所有目录下的初始化文件都写成了innit.py(少了开头的两个下划线),这直接导致Python无法识别这些目录为合法包。

修复步骤

  1. 将Learning目录下的innit.py重命名为__init__.py
  2. 将pages目录下的innit.py重命名为__init__.py
  3. 打开Learning/settings.py,在INSTALLED_APPS列表中注册pages应用:
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # 新增以下一行
    'pages',
]
  1. 重启IDE和Django开发服务器,导入错误提示即可消失。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 15:00:49