symfony2 объединяет первичный ключ и отношение

Я пытаюсь включить устаревшую базу данных в отображения доктрин.
Все таблицы имеют комбинированный первичный ключ. Один идентификатор и один «идентификатор optios».

Проблема заключается в том, что всегда необходимо устанавливать идентификатор Optios, но отношение OneToOne с теми же столбцами приводит к тому, что для столбца «Идентификатор Optios» устанавливается значение NULL. Я не уверен, что я делаю не так или есть способ обойти это?

PS: отношение «Pack» не является обязательным.

<?php

namespace CalendarBundle\Entity;

use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;

/**
*     @ORM\Entity(repositoryClass="CalendarBundle\Repository\CategoryRepository")
* @ORM\Table(name="Categories")
*/
class Category
{
/**
* @ORM\Id
* @ORM\Column(type="integer", name="Category_id")
*/
private $id;

/**
* @ORM\Column(type="integer", name="Optios_id")
* @ORM\Id
*/
private $optiosId;

/**
* @ORM\Column(type="string", name="Name")
*/
private $name;

/**
* @ORM\Column(type="boolean", name="AvailableOnline")
*/
private $online;

/**
* @ORM\Column(type="integer", name="SequenceNumber", nullable=true)
*/
private $order;

/**
* @ORM\Column(type="integer", name="Parent_id")
*/
private $parentId;

/**
* One Category has Many Packs.
*
* @var Pack
*
* @ORM\OneToOne(targetEntity="Pack", inversedBy="category")
* @ORM\JoinColumns(
*      @ORM\JoinColumn(name="Pack_id", referencedColumnName="Pack_id"),
*      @ORM\JoinColumn(name="Optios_id", referencedColumnName="Optios_id"),
* )
*/
private $pack;

/**
* @ORM\Column(type="boolean", name="Deleted")
*/
private $deleted;

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]