Doctrine OneToOne неправильно? создание УНИКАЛЬНОГО ИНДЕКСА

SchemaTool генерирует уникальный индекс для ассоциаций, которые являются OneToOne. Я считаю, что это неверно.

В разделе 6.6 страницы руководства по ассоциациям на сайте Doctrine показан пример OneToOne для продукта, имеющего одну доставку. Это показано для создания таблицы продукта:

CREATE TABLE Product (
    id INT AUTO_INCREMENT NOT NULL,
    shipping_id INT DEFAULT NULL,
    PRIMARY KEY(id)
) ENGINE = InnoDB;

Однако с тем же кодом для моего объекта Пользователь имеет одну организацию, моя таблица пользователя SQL создается как

CREATE TABLE User (
    id INT AUTO_INCREMENT NOT NULL,
    organisation_id INT DEFAULT NULL,
    UNIQ_3B978F9FA7F43455 (organisation_id),
    PRIMARY KEY(id)
) ENGINE = InnoDB;

Это не позволяет мне добавить 2 пользователей с той же организацией. Неправильно.

Я дополнительно попытался быть подробным с помощью уникального параметра аннотации JoinColumn.

@JoinColumn(name="organisation_id", referencedColumnName="id", unique="false")

Есть идеи? Кажется, я вообще ничего не могу найти об этом.

Спасибо

32
задан PorridgeBear 20 November 2011 в 23:20
поделиться