(old_field, new_field)
| 56 | |
| 57 | |
| 58 | def _related_non_m2m_objects(old_field, new_field): |
| 59 | # Filter out m2m objects from reverse relations. |
| 60 | # Return (old_relation, new_relation) tuples. |
| 61 | related_fields = zip( |
| 62 | ( |
| 63 | obj |
| 64 | for obj in _all_related_fields(old_field.model) |
| 65 | if _is_relevant_relation(obj, old_field) |
| 66 | ), |
| 67 | ( |
| 68 | obj |
| 69 | for obj in _all_related_fields(new_field.model) |
| 70 | if _is_relevant_relation(obj, new_field) |
| 71 | ), |
| 72 | ) |
| 73 | for old_rel, new_rel in related_fields: |
| 74 | yield old_rel, new_rel |
| 75 | yield from _related_non_m2m_objects( |
| 76 | old_rel.remote_field, |
| 77 | new_rel.remote_field, |
| 78 | ) |
| 79 | |
| 80 | |
| 81 | class BaseDatabaseSchemaEditor: |
no test coverage detected