Найти - Пользователи
Полная версия: SQLAlchemy внесение данных при помощи цикла ?
Начало » Python для новичков » SQLAlchemy внесение данных при помощи цикла ?
1
Astronaut
Доброго времени суток.
Возник вопрос, о том как добавить в БД, при помощи алхимии данные из списка(словаря).
Моя попытка сделать это при помощи цикла for приводит к ошибке TypeError: ‘bool’ object is not iterable
Собственно код:
...
class University(Base):
    __tablename__ = 'univer'
    id = Column(Integer, primary_key=True, autoincrement=False)
    title = Column(Unicode)
    def __init__(self, id, title):
    	self.id = id
    	self.title = title
# имеются 2 списка universities_id и universities_title
# вариант №1
univers=dict(zip(universities_id, universities_title)) # делаю словарь из списков
for id,title in (univers.items()):
   session.add(University(id, title))
   session.commit()
после чего получаю: TypeError: ‘bool’ object is not iterable, а если вместо session.add написать print(id+' : '+title), то нормально распечатает содержимое на экран.
ЧЯДНТ?
Заранне благодарю, товарищи.
4kpt_III
Зачем так над базой издеваться. Для этого есть метод add_all. Он получает последовательность объектов (список или набор) и их обрабатывает. Т.е. просто создаете список из объектов и передаете этому методу.

P.S. Мог бы написать в скайп…
Astronaut
4kpt_III
Зачем так над базой издеваться. Для этого есть метод add_all. Он получает последовательность объектов (список или набор) и их обрабатывает. Т.е. просто создаете список из объектов и передаете этому методу.P.S. Мог бы написать в скайп…
Все оказалось плачевнее, чем было на самом деле: в классе, была строчка с relationship, в которой я опять допустил одну и ту же ошибку - backref = True, вместо названия таблицы. Оттого и получал такую ошибку.
ПС: Сейчас с машины пишу, на которой его нет
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB