mirror of
https://github.com/davidhalter/django-stubs.git
synced 2025-12-15 00:07:09 +08:00
Fix type of <fieldname>_id when using ForeignKey(to_field=) (#1176)
* Fix type of <fieldname>_id when using ForeignKey(to_field=) Previously mypy_django_plugin would always use the field type of target model's primary key, but `to_field` can refer to a different field type. * Fixes * More fixes
This commit is contained in:
@@ -253,9 +253,12 @@ class AddRelatedModelsId(ModelClassInitializer):
|
||||
if related_model_cls._meta.abstract:
|
||||
continue
|
||||
|
||||
rel_primary_key_field = self.django_context.get_primary_key_field(related_model_cls)
|
||||
rel_target_field = self.django_context.get_related_target_field(related_model_cls, field)
|
||||
if not rel_target_field:
|
||||
continue
|
||||
|
||||
try:
|
||||
field_info = self.lookup_class_typeinfo_or_incomplete_defn_error(rel_primary_key_field.__class__)
|
||||
field_info = self.lookup_class_typeinfo_or_incomplete_defn_error(rel_target_field.__class__)
|
||||
except helpers.IncompleteDefnException as exc:
|
||||
if not self.api.final_iteration:
|
||||
raise exc
|
||||
|
||||
Reference in New Issue
Block a user