Я ищу способ запретить доктрине экспортировать внешние ключи для конкретных отношений.Например:
Item:
connection: doctrine
#attributes:
# export: tables
columns:
store_id: integer(4)
shelf_id: integer(4)
relations:
Store:
local: store_id
foreign: id
foreignAlias: Items
Shelf:
local: shelf_id
foreign: id
foreignAlias: Items
Shelf:
connection: doctrine
columns:
name: string(255)
Store:
connection: store
columns:
name: string(255)
Здесь, если я построю эту схему, доктрина сгенерирует 2 внешних ключа для таблицы элементов:
ALTER TABLE item ADD CONSTRAINT item_store_id_store_id FOREIGN KEY (store_id) REFERENCES store(id);
ALTER TABLE item ADD CONSTRAINT item_shelf_id_shelf_id FOREIGN KEY (shelf_id) REFERENCES shelf(id);
Если вы раскомментируете раздел «атрибуты», доктрина победитт создать.Где, как мне нужно только item_shelf_id_shelf_id
ограничение.Причина, по которой я этого хочу, заключается в том, что таблицы Item и Shelf находятся в одной базе данных, а Store - в другой базе данных - внешний ключ для него просто не будет применяться.