Обновить несколько строк в модели ORM одновременноPython

Программы на Python
Ответить
Anonymous
 Обновить несколько строк в модели ORM одновременно

Сообщение Anonymous »

Я получил такой объект:

Код: Выделить всё

class Fruit(ModelBase):
__tablename__ = "fruits"
id = Column(BigInteger, nullable=False)
name = Column(Unicode)
price = Column(Integer)
и моя таблица выглядит так:

Код: Выделить всё

+----+--------+-------+
| id |  name  | price |
+----+--------+-------+
|  1 | apple  |   100 |
|  2 | carrot |   200 |
|  3 | orange |   300 |
+----+--------+-------+
Я хочу обновить свой объект orm данными, чтобы моя таблица выглядела так:

Код: Выделить всё

+----+--------+-------+
| id |  name  | price |
+----+--------+-------+
|  1 | apple  |   500 |
|  2 | carrot |   200 |
|  3 | orange |   600 |
+----+--------+-------+
Фрукты

Код: Выделить всё

updated_data = [{"id": 1, "name": "apple", "price": 500}, {"id": 3, "name": "orange", "price": 600}]
Как я могу обновить свой объект orm Fruits, используя данные из списка обновленных_данных?
Я пробовал

Код: Выделить всё

update(Fruit).where(Fruit.id == updated_data.id).values(updated_data)
но это не работает.

Подробнее здесь: https://stackoverflow.com/questions/703 ... el-at-once
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»