mySQL 데이터베이스에 utf8mb4 인코딩을 사용하고 있습니다. 키릴 문자가있는 경우에도 내 장고 앱이 올바르게 작동합니다.Django 2.0 - dumpdata에서 fixtures를 사용하여 테스트하면 utf8mb4 인코딩 오류가 발생합니다.
하지만 ./manage.py test <module>
을 실행하고 동일한 데이터베이스에서 덤프 된 조명기를로드하려고하면 인코딩과 관련하여 오류가 발생합니다. 오류 중 하나는 다음과 같습니다
Could not load advert.Region(pk=1): (1366, "Incorrect string value: '\\xD0\\x9F\\xD0\\xBB\\xD0\\xBE...' for column 'region_name' at row 1")
LookupError: Problem installing fixture '<path>/test_db_one.xml': unknown encoding: utf8mb4
로 변경 그것은 인코딩을 잘 처리한다.
DEFAULT_CHARSET = 'utf8mb4'
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'autoplusplus_dev',
'USER': 'autoplusplus_django',
'PASSWORD': '1029',
'HOST': 'localhost',
'PORT': '3306',
'STORAGE_ENGINE': 'INNODB',
'OPTIONS': {'charset': 'utf8mb4'},
'TEST_CHARSET': 'utf8mb4',
}
}
내가 mysqlclient 1.3.12 당신은 Пло
을 기대하고
도움 주셔서 감사합니다. 내가 XML 파일 자체의 인코딩을 변경해야한다는 것이 드러났으며이 문제가 해결되었습니다. –
흠 ... 나는 XML이 UTF-8이어야한다고 생각했다. –