Size: a a a

2021 August 05

Ш

Шурик in symfony
Chain of responsibility)
источник

VM

Volodymyr Melko in symfony
не совсем... в цепи каждый елемент обраабывает контекст (если может) и прокидывает дальше. Здесь же только один елемент выберется и он сделает работу
источник

Kd

Konstantin dmz9 in symfony
оба кейса
источник

Ш

Шурик in symfony
если тот единственный, который выбрался - прокинет дальше?
источник

VM

Volodymyr Melko in symfony
ну возможно... главное что крайне удобный метод, легко расширяется, не забудешь ничего никуда добавить
источник

Ш

Шурик in symfony
у нас набор интерфейсов, мы не знаем про реализации, так что они вполне себе могут и прокидывать дальше в такие же цепочки
источник

ПГ

Павел Г. in symfony
Я бы скорее сказал что это модифицированный обсервер. Накидали обсерверов а они обрабатывают.
источник

Kd

Konstantin dmz9 in symfony
если каждый будет в цепочке обрабатывать это visitor, каждый хендлер зашел и что то сделал, но прервать цикл не может
источник

AN

Alexander Nazarov in symfony
Ну так мне кажется сделано в Security Voter
источник

VM

Volodymyr Melko in symfony
мне всеравно это больше похоже на такое
$this->serviceFactory->createService($baseTypeObj)->execute($baseObject);


просто вот это создание сервиса спрятано за фасадом
и на самом деле там его можно модифицировать (например не брать уже готовый сервис а реально его создать или достать из сервис локатора)
источник

VM

Volodymyr Melko in symfony
не, визитор совсем по другому выглядит, его обычно применяют для обхода деревьев всяких
источник

А

Алмаз in symfony
я чуть о другом
будет ли правильным например такое решение
/**
* @ManyToMany(targetEntity="Phonenumber")
* @JoinTable(name="users_phonenumbers",
*      joinColumns={@JoinColumn(name="user_id", referencedColumnName="id")},
*      inverseJoinColumns={@JoinColumn(name="phonenumber_id", referencedColumnName="id", unique=true)}
* )
* @ORM\JoinColumns({
*   @ORM\JoinColumn(name="four_table", referencedColumnName="id")
* })
*/
источник

AN

Alexander Nazarov in symfony
да нет, вы так не сможете сделать. Форматы joinTable определены. То что вы хотите сделать это не ManyToMany
источник

А

Алмаз in symfony
тогда каким образом мне провести связь через от 1ой таблице к 4ой?
на sql все красиво там просто 3 связанных между собой join
источник

AN

Alexander Nazarov in symfony
Поменяйте свое видение. Вы должны размышлять объектами и связами между объектами а не join'нами.
источник

AN

Alexander Nazarov in symfony
скорее всего вы не разобрались в ваших отношениях. Может быть у вас есть два ManyToMany ?
источник

А

Алмаз in symfony
спасибо за ответ, сейчас обдумаю и отвечу
источник

МФ

Максим Федоров... in symfony
так и используйте SQL для выборок данных

для выбора объектов хватает (как парвило) id
источник

T

Towhid in symfony
Do we have a Persian language user?
источник

А

Алмаз in symfony
связи идут таким образом
one to one (от 1 таблицы к 2ой)
many to one (от 2ой к 3ей)
many to one (от 3ей к 4ой)
источник