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

部署线上数据库后Django后台及部分URL报错问题求助

Django切换线上MySQL数据库后/admin及部分URL报错解决

1. 修正settings.py的语法错误

你的数据库配置存在两处明显问题:

  • ENGINE参数字符串未闭合,且模块名大小写不符合Django规范
  • 错误使用CHARSET键,Django标准配置应将字符集设置放在OPTIONS中

修正后的DATABASES配置:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'LMSAPI',
        'USER': 'admin',
        'PASSWORD': '12341234',
        'HOST': 'mydb.cvijitliru7b.ap-northeast-1.rds.amazonaws.com',
        'PORT': '3306',
        'OPTIONS': {
            'charset': 'utf8mb4',
        },
    }
}

2. 排查botocore报错原因

报错位置在botocore/auth.py,说明项目依赖AWS相关服务(如S3存储、RDS附加配置),但存在空值拼接字符串的情况:

  • 检查项目中AWS相关配置(如AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY)是否已正确设置,避免为空
  • 若未使用AWS服务,可检查是否误安装了botocore依赖,或清理项目中多余的AWS相关代码

3. 验证数据库连接

修正配置后,先运行以下命令测试数据库连接是否正常:

python manage.py migrate

若连接失败,额外检查:

  • AWS RDS实例的安全组是否允许当前IP访问
  • 数据库用户名、密码、库名是否与RDS实例配置一致
  • RDS实例是否处于正常运行状态

4. admin后台访问补充检查

若数据库连接正常但admin仍报错:

  • 确认已创建超级用户:python manage.py createsuperuser
  • 检查admin.py中注册的模型是否定义了正确的__str__方法,避免返回None值导致字符串拼接错误

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 01:35:25