Ошибка пытается сказать, что вы не можете преобразовать набор в целое число. Я предполагаю, что ошибка связана с вашим полем teacher = models.ArrayReferenceField(to=Teacher)
и его типом возврата является set()
. Вы можете получить индекс из набора и преобразовать его в целое число:
a = set({1,2,3,4})
int(a.pop())
Если вы пытаетесь преобразовать весь набор в целое число, сначала объедините их, а затем приведите к целому числу.
x = set({'1', '2', '3', ''4})
y = ''.join(x) # converting set into string
z = int(y)
как указано выше, убедитесь, что вы не возвращаете вложенный список.
Здесь значение приводится к int()
, и возникает ошибка:
File "C:\Program Files\Python36\lib\site-packages\django\db\models\fields\__init__.py" in get_prep_value
return int(value)