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

Django运行runserver仅显示系统检查无问题,寻求解决方案

Django runserver仅返回系统检查信息无启动反馈的解决方案

以下是针对该问题的排查和解决步骤:

  • 确认Django与Python版本兼容性:执行pip show django查看当前Django版本,确保其支持Python 3.9(推荐使用Django 3.2.x LTS版本,该版本对Python 3.9兼容性稳定)。若版本不匹配,执行pip install django==3.2.25(或对应兼容版本)升级/降级。
  • 深度验证数据库连接有效性:虽然MySQL Workbench有连接记录,但需确认Django能否正常操作数据库。运行python manage.py shell,在交互环境中执行:
    from django.db import connection
    connection.cursor()
    
    若抛出异常,检查settings.py中DATABASES配置:将HOST改为127.0.0.1(避免MySQL套接字连接权限问题),确认NAME为已存在的数据库,USER拥有该数据库的读写权限,PASSWORD无误。
  • 排查应用或路由的隐性错误:系统检查可能无法覆盖应用加载时的静默错误。尝试注释INSTALLED_APPS中的非核心应用,逐个恢复并重启服务,定位出问题应用;同时检查项目根目录和各应用的urls.py,排查循环导入、语法错误或无效路由配置。
  • 启用Django DEBUG日志:在settings.py中添加日志配置,捕获详细运行信息:
    LOGGING = {
        'version': 1,
        'disable_existing_loggers': False,
        'handlers': {
            'file': {
                'level': 'DEBUG',
                'class': 'logging.FileHandler',
                'filename': 'django_debug.log',
            },
        },
        'loggers': {
            'django': {
                'handlers': ['file'],
                'level': 'DEBUG',
                'propagate': True,
            },
        },
    }
    
    重新运行python manage.py runserver后,查看生成的django_debug.log文件,定位具体错误点。
  • 检查runserver端口占用情况:默认8000端口可能被占用,导致服务器无法启动。执行netstat -ano | findstr :8000(Windows)或lsof -i :8000(Linux/macOS)确认端口状态,若被占用,指定其他端口启动:python manage.py runserver 8001。
  • 清理缓存与迁移状态:执行python manage.py clearcache清除Django缓存,删除项目中所有__pycache__文件夹,再运行python manage.py migrate确保数据库迁移状态与代码一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.10 02:32:23