From e387f191f76777015b6ea687ce83cdb05ee47cee Mon Sep 17 00:00:00 2001 From: Tom Carrick Date: Sat, 18 Jul 2020 13:17:39 +0200 Subject: Fixed #31777 -- Added support for database collations to Char/TextFields. Thanks Simon Charette and Mariusz Felisiak for reviews. --- django/db/backends/postgresql/introspection.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'django/db/backends/postgresql/introspection.py') diff --git a/django/db/backends/postgresql/introspection.py b/django/db/backends/postgresql/introspection.py index b7952eaed7..a0e49c8da7 100644 --- a/django/db/backends/postgresql/introspection.py +++ b/django/db/backends/postgresql/introspection.py @@ -69,9 +69,11 @@ class DatabaseIntrospection(BaseDatabaseIntrospection): SELECT a.attname AS column_name, NOT (a.attnotnull OR (t.typtype = 'd' AND t.typnotnull)) AS is_nullable, - pg_get_expr(ad.adbin, ad.adrelid) AS column_default + pg_get_expr(ad.adbin, ad.adrelid) AS column_default, + CASE WHEN collname = 'default' THEN NULL ELSE collname END AS collation FROM pg_attribute a LEFT JOIN pg_attrdef ad ON a.attrelid = ad.adrelid AND a.attnum = ad.adnum + LEFT JOIN pg_collation co ON a.attcollation = co.oid JOIN pg_type t ON a.atttypid = t.oid JOIN pg_class c ON a.attrelid = c.oid JOIN pg_namespace n ON c.relnamespace = n.oid -- cgit v1.2.1