땡땡 땡땡.db.utils.Operational Error: (1071,'Specified key was too long) 해결 방법
4661 단어 Django
다음 형식의 오류가 발생하면 모델의
CharField
의max_length
가 너무 크게 지정했기 때문이다.migrations 파일을 직접 수정하여 복구할 수 있습니다. File "/home/yyy/venv/lib/python3.6/site-packages/MySQLdb/cursors.py", line 374, in _do_query
db.query(q)
File "/home/yyy/venv/lib/python3.6/site-packages/MySQLdb/connections.py", line 277, in query
_mysql.connection.query(self, query)
django.db.utils.OperationalError: (1071, 'Specified key was too long; max key length is 767 bytes')
예를 들어 아래의 코드는 원본 파일이다
class Migration(migrations.Migration):
dependencies = [
('goods', '0006_remove_goodstype_order'),
]
operations = [
migrations.AlterField(
model_name='goodstype',
name='name',
field=models.CharField(max_length=256, unique=True, verbose_name=' '),
),
]
다음으로 수정:
class Migration(migrations.Migration):
dependencies = [
('goods', '0006_remove_goodstype_order'),
]
operations = [
migrations.AlterField(
model_name='goodstype',
name='name',
# max_length 50
field=models.CharField(max_length=50, unique=True, verbose_name=' '),
),
]
수정 후 대응하는 모델을 수정하는 것을 잊지 말고
migrate
실행하면 된다
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django 라우팅 계층 URLconf 작용 및 원리 해석URL 구성(URLconf)은 Django가 지원하는 웹 사이트의 디렉토리와 같습니다.그것의 본질은 URL과 이 URL을 호출할 보기 함수 사이의 맵표입니다. 위의 예제에서는 URL의 값을 캡처하고 위치 매개 변수로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.