Задать вопрос
@MasterCopipaster

Почему doctrine при миграции в SQLITE не создает внешний ключь?

Слушайте народ, столкнулся с такой страной фигней, хочу что бы умные люди меня просветили.
У меня в проэкте ORM Doctrine и база sqlite
Сущность выглядит вот так
class Repay
{
    /**
     * @var \Ramsey\Uuid\UuidInterface
     * @ORM\Id
     * @ORM\Column(type="uuid", unique=true, options={"comment":"UUID repay"})
     * @ORM\GeneratedValue(strategy="CUSTOM")
     * @ORM\CustomIdGenerator(class=UuidGenerator::class)
     */
    private $id;

    /**
     * @ORM\ManyToOne(targetEntity=TradeDeal::class)
     * @ORM\JoinColumn(name="trade_deal_id", referencedColumnName="id", nullable=false)
     * @ORM\Column(options={"comment":"comment"})
     */
    private $trade_deal_id;


Создается таблица:
CREATE TABLE repay (id CHAR(36) NOT NULL --UUID repay(DC2Type:uuid)
        , trade_deal_id VARCHAR(255) NOT NULL
        , PRIMARY KEY(id));

Я ожидаю что trade_deal_id будет ссылатся на таблицу trade_deal на поле id
Я это указал в анатациях, но как видно по DDL внешний ключь не создан, почему? что я не так написал?
  • Вопрос задан
  • 109 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@MasterCopipaster Автор вопроса
Кароче сам разобрался, прикол:
@ORM\Column(options={"comment":"comment"})
Удаляешь эту строчку и все работает как надо... WTF...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы