0
0 комментариев

Помогите с кодом Python.
Нужно скопировать записи с БД с заменой одного значения.

Есть код:

groups = Group.query.filter(Group.project_id ==
current_project.id).all()
for group in groups:
    copy_groups = Group()
    copy_groups.project_id = copy_project.id
    copy_groups.name = group.name
    db.session.add(copy_groups)
db.session.commit()

Но при запуске кода выбивает ошибку:

sqlalchemy.exc.IntegrityError sqlalchemy.exc.IntegrityError:
(pymysql.err.IntegrityError)

(1062, «Duplicate entry ‘owners-60’ for
key ‘group_project_id_index'»)

[SQL: ‘INSERT INTO group (project_id,
active, name, manager_id) VALUES (%(project_id)s, %(active)s,
%(name)s, %(manager_id)s)’] [parameters: {‘manager_id’: None,
‘project_id’: 60, ‘name’: ‘owners’, ‘active’: 1}]

Пробовал изменить код:

groups = Group.query.filter(Group.project_id ==
current_project.id).all()
for group in groups:
    copy_groups = Group()
    copy_groups.project_id = copy_project.id
    copy_groups.name = group.name
    db.session.add(copy_groups)
    db.session.commit()

Но все равно дает ошибку.

Помогите пожалуйста, как добавить каждую запись с groups в базу данных

Изменен статус публикации
Добавить комментарий