Интересно, что означают эти два слова.
Я встречал их в документации Doctrine, но не могу т понять, что они означают.
Интересно, что означают эти два слова.
Я встречал их в документации Doctrine, но не могу т понять, что они означают.
Это связано с тем, будет ли обычное использование (в домене приложения) пытаться получить доступ к обеим сторонам отношений с другой стороны... Счета-фактуры, вероятно, будут однонаправленными, как если бы мы часто хотели знать, какие продукты находятся на счет-фактура, маловероятно, что вы захотите знать все счета-фактуры, содержащие данный продукт.
Магазины к продуктам, с другой стороны, являются двунаправленными, так как мы могли бы легко получить доступ как ко всем продуктам в определенном магазине, так и найти все магазины, которые продают определенный продукт.
Двунаправленность не ограничивается отношениями «многие ко многим». Отношения между сотрудником и руководителем могут легко быть двунаправленными, если в нашей модели предметной области объект сотрудника должен будет иметь доступ к объекту руководителя сотрудника, и, конечно же, объект руководителей содержит свойство, в котором перечислены все назначенные ему сотрудники. .
Один ко многим, двунаправленный: штат и город, где у штата есть свойство коллекции городов, а у города есть свойство штата.
Однонаправленный: многие ко многим: автобус и пассажир, где у автобуса есть свойство коллекции пассажиров, но у пассажира нет свойства коллекции, перечисляющего все автобусы, в которых ездил пассажир (приложению все равно).
Двунаправленный метод «многие ко многим»: класс Person, где у каждого человека есть свойство «Друзья», как коллекция объектов других людей, с которыми этот человек дружит;
или...
классы Artist и Album, где У исполнителя есть коллекция альбомов, а у альбома есть коллекция исполнителей (где альбом представляет собой сборник треков от нескольких исполнителей).
У нас есть две таблицы в базе данных: Student
таблица, Subject
таблица
Вам необходимо применить навигацию в базе данных из следующих двух направлений:
Student
к Subject
Студент может записаться на многие предметы в семестр.
Subject
к Student
На предмет может быть зачислено много разных студентов.
Вам нужно применить навигацию в базе данных только с one
направления:
Student
к Subject
Студент может записаться на многие предметы в семестр.