Psyhos
24.09.2015 - 16:27
Добрый день, помогите, пожалуйста разобраться:
Я понимаю связь много-ко-многим, много-к-одному, но изучая Doctrine, сколкнулся с понятием односторонние и двусторонние связи.. Что это? Как понять, когда использовать односторонние, а когда двухсторонние?
Например есть товар и категории, каждый товар может быть только в одной категории, это односторонняя или двухсторонняя связь?
waldicom
24.09.2015 - 17:24
Видимо имеется ввиду тот факт, что из можелей можно получать доступ на связанные модели. Т.е. если у тебя есть товар, то ты через геттеры получаешь доступ на объект категории, если это конечно прописано в модели. Или ты про другое?
_____________
Свои мозги еще никто не отменял.
Телепатов нету.
bestxp
24.09.2015 - 17:51
waldicom
это ты и описал
Psyhos
24.09.2015 - 20:21
Спасибо!
Да, я понимаю, что через связь можно получить связанную модель, мне не понятно отсюда:
http://odiszapc.ru/doctrine/association-mapping/#61Цитата |
... Для начала будет дано описание концепции прямой и обратной сторон связи. Это очень важный момент, он поможет понять принцип работы двусторонних связей. Главное, нужно усвоить, что связи могут быть одно- и дву- сторонними.... |
Когда нужны одно-, а когда двухсторонние связи?
Почитай теорию БД.
_____________
Трус не играет в хокей
bestxp
25.09.2015 - 12:38
Да что тут не понятно =) смотри архитектуру своего приложения
Например у тебя есть сущность User и она связана с has many comments, has many posts, has many photos
и вот у тебя задача, вывести список фото с автором, но не обязательно где-то выводить для пользователя список всех его фоток. вот у тебя односторонняя связь, photo belongs to user, при получении фоток ты можешь захватить и автора, но у пользователя ты напрямую через User::getPhotos ты не получишь список его фоток, пока не пропишешь в маппинге вторую сторону связи, а именно has many photos
что-то в таком духе, просто не всегда надо некоторым сущьностям получать связаные данные с ними
Psyhos
25.09.2015 - 14:19
Цитата (bestxp @ 25.09.2015 - 12:38) |
просто не всегда надо некоторым сущьностям получать связаные данные с ними |
Теперь понял. То есть нет строгих правил, когда надо тогда и используем. Тогда какую связь использовать: one-to-many или many-to-one тоже зависит от того, что для нас первично и как бы главнее..
Спасибо! продолжаю изучать Doctrin!
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.