Мне нравится клонировать сущность в Symfony2. Он работает нормально, если я клонирую Entity, где этот объект является дочерним. Следующий код не работает. Это клонирует объект, но я получаю дубликат ключа ошибкиSymfony2 Клонирование объектов не работает
код в мой контроллер:
$id = $request->get('id');
$entity = $orSessionVersionRepository->find($id);
// A new Version must be created!
// Clone OrSessionVersion entity
$cloneEntity = clone $entity;
$em->persist($cloneEntity);
$em->flush();
Ошибка:
An exception occurred while executing 'INSERT INTO or_session_version (version, name, duration, occupancy_standard, condition_weekday, condition_start, condition_end, creator, remarks, edit_reason, min_age, max_age, status, type, color, created, modified, or_session_id) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)' with params [2, "Session 1", "04:00:00", "75", "a:7:{i:0;i:0;i:1;i:1;i:2;i:2;i:3;i:3;i:4;i:4;i:5;i:5;i:6;i:6;}", "08:00:00", "16:30:00", "admin", null, null, 16, 100, "final", "default", "#1429e6", "2013-10-25 14:25:14", "2013-10-25 14:25:14", "41"]: SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '2-41' for key 'or_session_id_version'
Кто-то может помочь?
Почему вам нужно клонировать объект? –
«$ em-> persist ($ entity);» работать? – goto
Вам нужно отменить идентификатор или другое уникальное свойство, иначе вы столкнетесь с нарушением ограничения. – busypeoples