mirror of
https://github.com/django/django.git
synced 2025-04-17 22:04:38 +00:00
Fixed #35839 -- Fixed crash when adding GeneratedField with db_comment on MySQL.
Thanks Simon Charette for the test. Signed-off-by: saJaeHyukc <wogur981208@gmail.com>
This commit is contained in:
parent
87c5de3b7f
commit
f7017db92c
@ -313,8 +313,6 @@ class BaseDatabaseSchemaEditor:
|
||||
yield column_db_type
|
||||
if collation := field_db_params.get("collation"):
|
||||
yield self._collate_sql(collation)
|
||||
if self.connection.features.supports_comments_inline and field.db_comment:
|
||||
yield self._comment_sql(field.db_comment)
|
||||
# Work out nullability.
|
||||
null = field.null
|
||||
# Add database default.
|
||||
@ -373,6 +371,8 @@ class BaseDatabaseSchemaEditor:
|
||||
and field.unique
|
||||
):
|
||||
yield self.connection.ops.tablespace_sql(tablespace, inline=True)
|
||||
if self.connection.features.supports_comments_inline and field.db_comment:
|
||||
yield self._comment_sql(field.db_comment)
|
||||
|
||||
def column_sql(self, model, field, include_default=False):
|
||||
"""
|
||||
|
@ -4861,6 +4861,24 @@ class SchemaTests(TransactionTestCase):
|
||||
comment,
|
||||
)
|
||||
|
||||
@skipUnlessDBFeature("supports_comments", "supports_stored_generated_columns")
|
||||
def test_add_db_comment_generated_field(self):
|
||||
comment = "Custom comment"
|
||||
field = GeneratedField(
|
||||
expression=Value(1),
|
||||
db_persist=True,
|
||||
output_field=IntegerField(),
|
||||
db_comment=comment,
|
||||
)
|
||||
field.set_attributes_from_name("volume")
|
||||
with connection.schema_editor() as editor:
|
||||
editor.create_model(Author)
|
||||
editor.add_field(Author, field)
|
||||
self.assertEqual(
|
||||
self.get_column_comment(Author._meta.db_table, "volume"),
|
||||
comment,
|
||||
)
|
||||
|
||||
@skipUnlessDBFeature("supports_comments")
|
||||
def test_add_db_comment_and_default_charfield(self):
|
||||
comment = "Custom comment with default"
|
||||
|
Loading…
x
Reference in New Issue
Block a user