summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/db/backends/base/schema.py4
-rw-r--r--tests/schema/tests.py18
2 files changed, 20 insertions, 2 deletions
diff --git a/django/db/backends/base/schema.py b/django/db/backends/base/schema.py
index 6303248127..91351e5c9e 100644
--- a/django/db/backends/base/schema.py
+++ b/django/db/backends/base/schema.py
@@ -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):
"""
diff --git a/tests/schema/tests.py b/tests/schema/tests.py
index c0c284672b..f734525dcc 100644
--- a/tests/schema/tests.py
+++ b/tests/schema/tests.py
@@ -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"