diff options
| author | Clifford Gama <cliffygamy@gmail.com> | 2025-09-14 15:36:58 +0200 |
|---|---|---|
| committer | Jacob Walls <jacobtylerwalls@gmail.com> | 2025-09-19 15:54:19 -0400 |
| commit | 336e713e2a1ac143eeec021d66a6f3168f983183 (patch) | |
| tree | f05611fcafc71dd34d6f2989b3134f22835d9f95 | |
| parent | 5ee651f2555f3258b136f6e8be90f018fd8ffbf0 (diff) | |
Refs #36438 -- Simplified retrieval of GeneratedField base fields in migrations autodetector.
This was creating an unusable Q object solely to call
referenced_base_fields on it.
| -rw-r--r-- | django/db/migrations/autodetector.py | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/django/db/migrations/autodetector.py b/django/db/migrations/autodetector.py index f974c4e4ea..7cc22c0637 100644 --- a/django/db/migrations/autodetector.py +++ b/django/db/migrations/autodetector.py @@ -1682,7 +1682,10 @@ class MigrationAutodetector: def _get_dependencies_for_generated_field(self, field): dependencies = [] - referenced_base_fields = models.Q(field.expression).referenced_base_fields + referenced_base_fields = [ + name + for name, *lookups in models.Model._get_expr_references(field.expression) + ] newly_added_fields = sorted(self.new_field_keys - self.old_field_keys) for app_label, model_name, added_field_name in newly_added_fields: added_field = self.to_state.models[app_label, model_name].get_field( |
