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

Django 1.8与DRF 3.7出现ImportError: No module named urls问题求助

解决 ImportError: No module named urls 问题

嘿,这个导入错误我之前也碰到过,大概率是URL配置或者应用注册环节出了问题,我帮你一步步排查解决:

1. 先确认 core 应用已注册到 Django 配置

Django 如果没把 core 加入到 INSTALLED_APPS 里,就找不到 core.urls 这个模块。打开你的 settings.py,检查 INSTALLED_APPS 里是否包含这两个项:

INSTALLED_APPS = [
    # 其他默认应用(比如django.contrib.admin之类的)
    'core',          # 必须加上你的core应用
    'rest_framework' # DRF也得注册,不然ListAPIView用不了
]

2. 修正URL配置里的多余斜杠

你的主 urls.py 已经匹配了 ^api/core/,但 core/urls.py 里的 r'^/users/' 多了一个开头的斜杠——这不仅会导致URL匹配失败,还可能间接引发模块导入的混淆。把 core/urls.py 改成这样:

from django.conf.urls import url
from . import views  # 这里建议直接导入views模块,避免命名混淆

urlpatterns = [
    url(r'^users/', views.userlist),  # 去掉开头的/
]

3. 检查 core 应用的目录结构是否合法

要让Python识别 core 为可导入模块,core 目录下必须有 __init__.py 文件。你的项目结构应该是这样的:

你的项目根目录/
    manage.py
    项目配置目录/
        settings.py
        urls.py
    core/
        __init__.py  # 空文件就行,必须存在!
        urls.py
        views.py
        models.py
        # 其他应用相关文件

如果没有 __init__.py,赶紧创建一个空文件,这是Python识别模块的必要条件。

4. 确认View的导入路径正确

看你 core/urls.py 里导入的是 core_view,但你的view文件叫 views.py,这明显不匹配啊!要么把view文件重命名为 core_view.py,要么修改 core/urls.py 的导入语句:

# 推荐写法,直接从views导入需要的视图
from django.conf.urls import url
from .views import UserList

urlpatterns = [
    url(r'^users/', UserList.as_view()),
]

做完这些修改后,重启Django开发服务器,再访问 http://localhost:8000/api/core/users 应该就能正常返回用户列表了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:36:55