Почему Django хранит поле charfield как кортеж?

Допустим, у меня есть простая модель в django

class Customer(models.Model):
    session_id = models.CharField(max_length=200)
    nuts3 = models.CharField(max_length=200)

Для сохранения объекта модели я сделаю следующее

Customer.create(session_id = "unique_session_id", nuts3 = "some text")

Теперь предположим, что мне нужно перезаписать орех3 в сохраненном объекте модели каким-то другим текстом

customer = Customer.objects.filter(session_id = "unique_session_id")
customer = customer[0]
customer.nuts3 = "some new text"
customer.save()

При просмотре сохраненного объекта клиента в админке я вижу кортеж в поле nuts3 charfield ('some new text',). Я ожидал, что в поле будет только строка без кортежа. Как получилось, что Django добавил строку как кортеж?

Как отметил Виллем Ван Онсем в разделе комментариев, это связано с запятой, о которой я не знал. Мой фрагмент кода приведен ниже, и в , в nuts3, стоит запятая, которую нужно убрать. Спасибо, что помогли мне с этим!

if customer:
            customer = customer[0]
            customer.nuts3 = nuts3,
            customer.save()
Вернуться на верх