mirror of
https://github.com/django/django.git
synced 2025-10-23 21:59:11 +00:00
Fixed #23920 -- Fixed MySQL crash when adding blank=True to TextField.
Thanks wkornewald for the report and Markus Holtermann for review.
This commit is contained in:
@@ -10,7 +10,7 @@ from django.db.transaction import atomic
|
||||
from .models import (Author, AuthorWithDefaultHeight, AuthorWithM2M, Book, BookWithLongName,
|
||||
BookWithSlug, BookWithM2M, Tag, TagIndexed, TagM2MTest, TagUniqueRename,
|
||||
UniqueTest, Thing, TagThrough, BookWithM2MThrough, AuthorTag, AuthorWithM2MThrough,
|
||||
AuthorWithEvenLongerName, BookWeak)
|
||||
AuthorWithEvenLongerName, BookWeak, Note)
|
||||
|
||||
|
||||
class SchemaTests(TransactionTestCase):
|
||||
@@ -416,6 +416,19 @@ class SchemaTests(TransactionTestCase):
|
||||
self.assertEqual(columns['name'][0], "TextField")
|
||||
self.assertEqual(bool(columns['name'][1][6]), False)
|
||||
|
||||
def test_alter_text_field(self):
|
||||
# Regression for "BLOB/TEXT column 'info' can't have a default value")
|
||||
# on MySQL.
|
||||
new_field = TextField(blank=True)
|
||||
new_field.set_attributes_from_name("info")
|
||||
with connection.schema_editor() as editor:
|
||||
editor.alter_field(
|
||||
Note,
|
||||
Note._meta.get_field_by_name("info")[0],
|
||||
new_field,
|
||||
strict=True,
|
||||
)
|
||||
|
||||
def test_alter_null_to_not_null(self):
|
||||
"""
|
||||
#23609 - Tests handling of default values when altering from NULL to NOT NULL.
|
||||
|
||||
Reference in New Issue
Block a user