Yevgeniy
Михаил
Михаил
А есть qb для формирования regexp? 🌚
Gleb
Юра
Сырой запрос: открываем доку по базе данных, читаем
Билдер: открываем доку по билдеру читаем
И там и там нужно читать доку но в первом случае ты изучаешь то что можнл применить где угодно, а во втором случае ты учишь ларавель
Юра
Ненавижу все эти абстракции которые нкбприносят никакого реального профита
Михаил
Юра
Понятия не имею. Я пилю норм DI либу для тацпскрипта чтобы получить удобство и скорость
Dmitriy
Юра
Мне пофигу на Лару )
Dmitriy
Михаил
Михаил
у нас другой опыт
Я понимаю что вы пытаетесь меня подколоть, но не получиться, потому что мы знали что так будет и в конечном итоге сервис пришёл к единому стилю
Dmitriy
хм да не хотел подкалывать )
Михаил
Важно не перетягивание одеяла, важно то, что бы каждому было тепло (не геи)
Dmitriy
ну если кодовая база устоялась, то новому программисту к ней все равно надо будет привыкать, причем не важно какой опыт, ларавель или симфони
Юра
Михаил
Ну в любом случае новому программисту нужно будет привыкать к новой кодовой базе. В симфе почти во всех аспектах нет стандарта.
Начиная от богатого набора библиотек, заканчивая организацией архитектурных слоёв.
Михаил
Нет. Там есть nest js например
Просто js это вроде про runtime сборку объектов и про прототипо-ориентированное программирование. Как в таком случае уместить di - не ясно
Но в любом случае, кидай ссылку, будем посмотреть. Js давно застоялся, без существенных изменений. Может станешь его мессией
Павел
Юра
Юра
Объекты в рантайме создаются. Не пойму про что ты
Михаил
Юра
Есть классы там
Юра
Просто наследование там чуток по другому работает
Михаил
Да? Не видел
Михаил
Павел
Юра
Билдеры круты там где они генерируются. И где у тебя весь билдер статически сгенерирован из схемы и проверяет комплитит сразу в идее. А так да помогает возможно меньше ручной писанины меньше вероятности опечаток, но все равно сырой запрос понятен всем и каждому. У нас например запросы должны проходить ревью в датабейс отделе и им билдер не покажешь
Михаил
Ларавед читая чятик по симфе
Павел
Юра
Но я думаю с билдера можно же получить сырой запрос, он же в итоге его билдит
Павел
Ну конечно если брать какой то прям невероятный инцидент. То чисто теоретически все возмодно.
Как возможно что в addSql добавят подкапотом вендора drop database
Михаил
Павел
Я не спорю что qb не имеет смысла в миграция, и сам же это написал. Но опытный не опытный...,че кого судить, перепись не вели)
Юра
Вопрос только модно ли это сделать прям в миграции или это нужно копать исходники чтобы понять где он там его строит
Юра
Ну допустим для удобства построения пишешь билдер, а потом сырой запрос отправляешь на апрув куда-то
Dmitriy
А как вы raw собираете если по условиям разные секции нужны? Просто конкатинируете строки?
The Ant
Я бы предпочел билдер вместо этой порнографии, но он упадет по памяти )
Михаил
Vlad
муравей ты теперь в банке работаешь?
The Ant
The Ant
The Ant
Телегу просто на комп не хочу ставить
The Ant
Веб клиент лень запускать
The Ant
Михаил
в любом случае любая незабинженая хрень - это вектор
The Ant
С биндами сложно :( я бы сделал, но там массивы большие надо будет в памяти ворочать. Так быстрее
The Ant
У мускла кстати всего 2мегабайта на размер запроса лимит
Dmitriy
Яб не пропустил такой МР )
The Ant
The Ant
Ну вот скопилось у тебя за 2 минуты 30-40тысяч строк на обновление. Шо делать?
The Ant
Строить массивы? Их них потом запросы? Это нормально так ест процессор.
+ Учитывать ограничение на запрос. У меня там просто по 500записей выгребает. А по идее надо вычислять длину запроса, которая не превышала бы размер опции в бд.
Dmitriy
Ну надо разбираться что у тебя за дич в твоем кейсе происходит, так сразу и не скажешь как лучше
The Ant
The Ant
Вместо редиса можно кликхаус какой. Не суть.
Anton
Михаил
Михаил
The Ant
Михаил
Ой блин, глаза в кучу
Михаил
«… Вай малалец. Помогло. Мы ему яйца только до подбородка дотянули, а глаза уже на место встали»
Роман
вообще норм писать такое где либо кроме репозиториев или все crud операции заносить туда, наверно да, а иначе код раздувается капец, в сервиса должна быть только бизнес логика
Михаил
Михаил
всякие setUpdatedAt можно через хуки доктрины
Роман
как
Михаил
как
https://www.doctrine-project.org/projects/doctrine-orm/en/3.2/reference/events.html#lifecycle-callbacks
Михаил
- Заменить бы ещё массив на dto
- Избавиться от сеттеров и заменить их доменным методом у сущности (названия методов не моя сильная сторона)
$booking->changeHotelWithStatus($hotelWithStatusDTO);
- И пересмотреть флоу при котором тебе зачем то нужно или находить или создавать сущность
Роман
- Избавиться от сеттеров и заменить их доменным методом у сущности
это что значит это же основа доктрины или дата маперов
Роман
да я так и планировал перенести сетеры в репозитории