Введение в связи в Nest
Пусть у материала в базе есть автор, но в коде это два отдельных класса без общего поля. Строка статьи и строка человека живут в разных таблицах, и приложение не знает, как их сопоставить.
В PostgreSQL связь чаще всего хранят числом: в одной таблице лежит идентификатор строки из другой. Такую колонку называют внешним ключом. TypeORM умеет не только создать её при синхронизации, но и показать ссылку обычным полем соседнего класса.
На стороне «многих» поле ссылается на одну запись «одного». На стороне «одного» можно завести список связанных строк. Бывают пары один к одному и таблицы-связки для многих ко многим.
В разделе пройдём объявление связи в сущностях, загрузку соседних объектов при чтении, сохранение и обнуление ссылки, а также жёсткое правило базы через шаг миграции. Примеры опираются на TypeORM и модуль темы с регистрацией сущностей.
Каждый следующий урок добавляет один вид связи или один приём работы с ней, без смешения всех вариантов в одном файле.