Django : Обновление значения столбца (динамически выбирайте имя столбца)

Я хочу обновить поле таблицы путем фильтрации данных и выбора определенной строки, в приведенном ниже запросе "address1" является полем таблицы User, которое необходимо обновить значением, доступным в переменной addr:

User.objects.filter(user_id=uid).update(address1=addr)

Вышеприведенный запрос работает нормально, так как я задал имя столбца = "address1" в опции обновления.

Но я хочу, чтобы поле обновления было динамическим, т.е. это может быть адрес1, адрес2, адрес3 (это хранится в переменной) Допустим, оно хранится в переменной add_field, тогда я не могу использовать нижеприведенный вариант, так как он попытается найти столбец add_field в таблице User, которого там нет:

User.objects.filter(user_id=uid).update(add_field=addr)

Запрос : Как я могу передать имя поля через переменную/динамически в опцию обновления в указанной строке кода или через любую другую опцию.

Вы можете распаковать словарь, полный аргументов ваших ключевых слов, следующим образом:

User.objects.filter(user_id=uid).update(**{add_field:addr})
Вернуться на верх