Константин
простой джоин джоинит нул если нет такой связи проверено тыщу раз
А у меня почему то нет, а если это связанные объекты
Юра
ну сделай $query = $this-createQuery()...
Юра
и потом var_dump($query->getSql());
Юра
помоему так
Константин
ну сделай $query = $this-createQuery()...
"SELECT l0_.id AS id_0, o1_.brand AS brand_1 FROM lead l0_ INNER JOIN offer o1_ ON l0_.offer_id = o1_.id WHERE (l0_.user_id = 1) AND l0_.dtype IN ('lead', 'bitrixsyncentitylead')"
Юра
почему-то у тебя INNER JOIN
Юра
а ну убери из селекта бренд и покажи дамп
Юра
ли добавь LEFT JOIN
Юра
вместо JOIN
Константин
а ну убери из селекта бренд и покажи дамп
"SELECT l0_.id AS id_0 FROM lead l0_ WHERE (l0_.user_id = 1) AND l0_.dtype IN ('lead', 'bitrixsyncentitylead')"
Юра
допиши LEFT
Константин
допиши LEFT
Заработало
Юра
да я тупанул, джоин по дефолту INNER
Юра
LEFT выбирает со второй таблицы нул если нет совпадения
Константин
Юра
https://zametkinapolyah.ru/wp-content/uploads/2016/07/type-join.png
Юра
на вот шпаргалка сохрани
Константин
Константин
на вот шпаргалка сохрани
спасибо огроменейшее
Константин
вообще прям помог
Юра
Это не все виды но мне за всю жизнь больше не понадобилось
Юра
И можешь писатт getArrayResult
Юра
Так короче
Юра
Доктрина Кстати right join не поддерживает вроде
Константин
И можешь писатт getArrayResult
Это где? Вместо гидратора?
Юра
Я уже взял. Мне столько даже не нужно. Отдам лишнее по ссылке naebalova.net
Андрей
Доктрина Кстати right join не поддерживает вроде
Райт джоин не нужен. Это ошибка логики. Вообще в ОРМках нигде и ни в каких он не нужен.
Юра
Ну да логично это как выбрать поле без объекта
Maxim Kainov
Заработало
Ты про джоины не читал ничего?
Maxim Kainov
Константин
Ты про джоины не читал ничего?
Да нет читал, просто как то вылетело из головы и я всегда считал что symfony по умолчанию использует left join, когда прописываю join
Константин
Еще кросс джоин есть )
Про вот это я вообще не слышал походу, я вот знаю что можно еще группировать типо например имитация outer, где присоединение левого множества плюс правое и т.д.
jenia
Есть фикстура user. Хочу создать такую же но game с id пользователей uuid из user. Как такое сделать?
Maxim Kainov
Или $gameFabric->fromUser($user)
artem
похоже на это https://symfony.com/doc/current/reference/forms/types/entity.html
Помогло. И с мени ту мени работает. Видимо пора на работу идти, дома сильно туплю
artem
всем привет. мб вопрос тупой, но как перевести +03:00 допустим в таймзону валидную для date_timezone_set?
Sergei
а вообще есть второй параметр у new \DateTime
Александр
всем привет. мб вопрос тупой, но как перевести +03:00 допустим в таймзону валидную для date_timezone_set?
https://stackoverflow.com/questions/11820718/convert-utc-offset-to-timezone-or-date/11896631 на стеке предлагают поразбивать строку
Юра
Регуляркой убрать все кроме плюс минус и цифр
Юра
Смотри preg_replace
Кирилл
Вообще конструктор datimezone поддерживает смещение
Sergei
можно таймзону и у дейтайма забрать
artem
Регуляркой убрать все кроме плюс минус и цифр
тоже вариант. как оказалось сетить тз не нужно,но пригодитсяна потом
Константин
Всем привет. Кто нибудь делал очередь в симфони?
Aleksandr
ага
Aleksandr
может быть надо было добавить сразу вопрос?
Константин
Интересует не очередь сообщений типо ребита, а очередь вызова контроллера. Интересует реализация сохранения данный и вот из этого построить очередь @Cawa87
Aleksandr
ты уверен, что прочел доку?
Aleksandr
хотя не
Aleksandr
я не понял
Aleksandr
пример?
Aleksandr
своими словами
Константин
Ну есть хук который в котором сложная синхронизация данных она выполняется долго. Если в момент выполнения вызвать еще раз этот хук то воркер параллельно запустит еще раз контроллер, в итоге запись данных будет скорее всего с ошибками
Константин
Aleksandr
ну все просто
Aleksandr
тебе нужно асинхронное выполнение
Aleksandr
из хука ставятся задачи
Константин
Aleksandr
и ты хочешь сказать, что ты прочитал ?
Aleksandr
https://symfony.com/doc/current/messenger.html
Константин
Костыли только в голове, есть какое то решение? Понятное дело самое просто очередь в бд писать и смотреть и чистить после выполнения
Aleksandr
как бы есть стандартный механизм
Aleksandr
обработки ивентов
Aleksandr
что ты уже попробовал сделать?
Константин
что ты уже попробовал сделать?
Нет ни чего не делал, просто думаю как реализовать, задачи на завтра
Aleksandr
вот читай от корки до корки
Aleksandr
а потом не задавай глупые вопросы
Aleksandr
там даже примеры есть
Константин
Не понимаю почему асинхронность, когда мне с точностью да наоборот нужно выстроить синхронный цепочку @Cawa87
Константин
Ладно сохраню завтра читкану, что то это я упустил
Константин
Спасибо
Aleksandr
у тебя долгое действие
Aleksandr
ты его должен вынести
Aleksandr
ты должен хуку сказать - я принял
Константин
ты должен хуку сказать - я принял
А точняк, туплю уже 5.40, надо бы спать ложиться 🙂