使用 Django 在 MySQL 中保存 Unicode 字符时出现错误字符串值错误
当尝试将 unicode 字符串保存到 Django 中的 auth_user 模型时,您可能会遇到以下错误message:
Incorrect string value: '\xC4\x8Dius' for column 'last_name' at row 104
潜在原因
此错误通常由以下原因引起:
解决方案
要解决此问题,请按照以下步骤操作步骤:
更改数据库、表和列以使用 utf8mb4 字符集:
CREATE DATABASE db_name CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_general_ci';
ALTER TABLE auth_user CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
指定Django中的字符集设置:
在 Django 设置文件 (settings.py) 中,添加以下行:
DATABASES = { 'default': { 'ENGINE':'django.db.backends.mysql', ... 'OPTIONS': {'charset': 'utf8mb4'}, } }
其他注意事项
以上是在 Django 和 MySQL 中保存 Unicode 时如何修复'字符串值不正确”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!