Mam dziwne zachowanie, przynajmniej dla mnie, które powoduje pewne błędy w moim projekcie.Dlaczego właściwość related_model produktu Django zwraca łańcuch zamiast instancji Model?
Używam Django 1.9 i pakiet osoba trzecia django (django-jet) sprawia, że wykorzystanie field.related_model
nieruchomości w Django administratora, a czasem nie udaje, ponieważ oczekuje field.related_model
powraca instancji modelu i dla niektórych z moich modeli wraca nazwę modelu .
This is the property defined in Django code:
@cached_property
def related_model(self):
# Can't cache this property until all the models are loaded.
apps.check_models_ready()
return self.remote_field.model
Rzeczy, które próbowałem:
- Jeśli related_model Django jest @property zamiast tego @cached_property to działa i zwraca instancję modelu.
- Jeśli zadzwonię pod numer
field.remote_field.model
zamiastfield.related_model
w linii, która powoduje błąd, działa i zwraca instancję modelu.
Proszę, masz jakiś pomysł? Mogę zrobić obejście, ale chciałbym wiedzieć, dlaczego to zachowanie.
Z góry dziękuję!