Проблема не в __str__
из Campus
. Это какая-то другая модель (или что-то еще), которая имеет __str__
что-то, что возвращает объект Campus
(вероятно, с ForeignKey
/ OneToOneField
) и, следовательно, не вызывает __str__
на этом объекте.
Так обычно происходит, если у вас есть модель, которая выглядит следующим образом:
class MyOtherModel(models.Model):
campus = models.ForeignKey(Campus, on_delete=models.CASCADE)
# …
def __str__(self):
return <s>self.campus</s>
Здесь метод __str__
, таким образом, возвращает объект Campus
, а не строку , Это можно исправить, преобразовав объект Campus
в str
ing, например, вызвав str(..)
для него:
class MyOtherModel(models.Model):
campus = models.ForeignKey(Campus, on_delete=models.CASCADE)
# …
def __str__(self):
return <b>str(</b>self.campus<b>)</b>