Alexander
Anonymous
@franzose будет жить. Поприветствуем!
Anonymous
@TheReBorn будет жить. Поприветствуем!
Anonymous
@sund1 будет жить. Поприветствуем!
Anonymous
@aksImidaV будет жить. Поприветствуем!
Anonymous
@BlackArray будет жить. Поприветствуем!
Anton 🐻
интересная беседа и информация важная )))
Yuri
ну человек а не бот останется в живых - по-моему это важно )))
Anonymous
На правах рекламы, может кому интересно будет. https://click.email.microsoftemail.com/?qs=60f4c3ab55b367b48161cb9a84788231a58e01af50d0352ef4d26b68b31505078643049293825e5348a91fa18f9e600dc577631e18146063
Anton 🐻
что ето
Anonymous
Sql Server V.Netx и Azure...
Anonymous
Next
Anonymous
Новая(почти))) фигня от мелкомягких
Nikolay
с реф ссылкой - ай не красиво
Anonymous
с реф ссылкой - ай не красиво
Ну копировал с рассылки) простите)
Yuri
там же не только ему кеш ну чуловекам скидка
Anonymous
привет, столкнулся с траблой не понимаю как разобраться. выбираю записи из апишки, по тестовому заданию требуется чтобы записи можно было сортировать по одному полю вверх и вниз. собственно вписываю в запрос сортировку. но также требуется пагинация. делать ее оффсетом нельзя, потому что завтра еще лимиты какие-нибудь появятся - делаю через while id > last_id. и получается так - переходишь на вторую страницу, там меняешь сортировку и гармонично оказываешься на первой, но активна то еще вторая. как выкарабкиваться?
Anonymous
если даже сделать подзапросом, получится сортировка одной конкретной страницы. но ведь сортировка получается влияет на пагинацию тоже и если страниц будет например 10, а я поменяю на пятой сортировку я заранее не знаю на какой странице окажется мой айдишник и поэтому проставить страницу при сортировке тоже не получается
Кирилл
Что значит офсетом нельзя, почему нельзя?
Anonymous
облачные сервисы когда написать что-нибудь вроде offset 10000 на странице эдак 200 падают в даун и пишут шо тут хардкод лимит на 10000 записей
Anonymous
оффсет же проходит записи как будто ты их выбираешь
Anonymous
не все конечно везде свои приколы, но сталкивался раз 7-8 с разными
Anonymous
@maxkain будет жить. Поприветствуем!
Anton 🐻
есть ли какой-то аналогичный инрефнейс и реализации по типу \Symfony\Component\Console\Input чтобы одновременно абстрагировал и имплементировал доступ к пользовательскому вводу через GET/POST, CLI, QUEUE и другие кастомные способы ввода
Anton 🐻
т.е. чтобы я тупо мог вызвать $input->get('param') и получал param вне зависимости от того приложение было запущено через консоль, через веб, через воркер из очереди или ещё как
Anton 🐻
ещё на 1 уровень абстракции выше чем request, input и т.п.
Maxim Kainov
ещё на 1 уровень абстракции выше чем request, input и т.п.
Ты и так можешь вызвать $input->get() и $request->get() 😁
Maxim Kainov
И получить парам
Anton 🐻
у них разный интерфейс как минимум
Maxim Kainov
А так, наверное, проще самому сделать, чем искать. Или нет?
Anton 🐻
т.е. я не смогу сделать function exec(SomethingInputInterface $input) и работать с $input вне зависимости от контекста запуска
Anton 🐻
А так, наверное, проще самому сделать, чем искать. Или нет?
зачем делать самому то, что можно взять готовое
Anton 🐻
зачем?!
чтобы писать сильно меньше кода
Nikolay
чтобы писать сильно меньше кода
ты понимаешь что ты пишешь говнокод?!
Maxim Kainov
Anton 🐻
не обращай внимания, у человека проекция своих недостатков на других людей)
Nikolay
С чего такие выводы?
"т.е. чтобы я тупо мог вызвать $input->get('param')"
Nikolay
И что?
вместо $input тогда можно использовать массив, суть не изменится
Maxim Kainov
вместо $input тогда можно использовать массив, суть не изменится
Ему, наверное, кроме get и другие методы нужны
Nikolay
Ему, наверное, кроме get и другие методы нужны
отлично, пусть так. скорее всего интерфейс будет иметь два метода get и set, а код который будет выглядеть так $input->get('foo') ... $input->get('foo1') ... $input->get('foo2'). это равносильно использованию массива.
Anton 🐻
нет
Anton 🐻
1 метод get)
Anton 🐻
но в разном контексте он данные берёт из разных мест, а не хранит в массиве
Anton 🐻
для веб запросов он может их брать в GET/POST/COOKIE, а для CLI из аргументов
Anton 🐻
если запускается воркером из очереди, то из конфигурации джобы
Alexander
У симфы есть parameterbag. Не совсем то что ты хочешь, но просто сформируешь его перед отправкой в функцию твою
Anton 🐻
в том то и проблема что я ничего формировать не хочу
Yan
А придётся.
Anton 🐻
а смысл?
Yan
Ну смысл в том, что интерфейсы HTTP и CLI не совпадают.
Alexander
Ну ты хочешь разные штуки под один интерфейс загнать
Yan
Потому можно запилить свою небольшую обёртку.
Alexander
Не получится так
Yan
MyServiceInputArgs и погнали.
Anton 🐻
да почему ж не получится, типичная инверсия зависимости
Anton 🐻
есть 100-200 классов имплементирующих CommandInterface, у которых в конструкторе: public function __construct(Input $input) { $this->input = $input; } а далее уже в коде exec() каждый класс сам решает какие параметры ему нужны и получает их $this->input->get('papram') собственно DI индектит в конструктор либо реализацию Input под конкретный контекст (web/cli/worker) либо Input является фасадом (или чем там ещё) и сам внутри себя определяет контекст и переадресовывает вызов ->get('papram') в реализацию нужного контекста.
Anton 🐻
осталось только реализовать, но желательно найти готовое решение
Yan
А что есть Input?
Yan
Это симфоневый интерфейс или свой?
Anton 🐻
не симфониевый, но ему подобный
Anton 🐻
по принципу действия сходный, но на 1 уровень абстракции выше
Petr
у меня по вебхукам эта штукенция отлавливает и исполняет https://github.com/adnanh/webhook/
Petr
есть докер образ к нему
Maxim Kainov
осталось только реализовать, но желательно найти готовое решение
Уже давно бы сделал свое, там несколько строчек кода
Maxim Kainov
Лень
А сидеть обсуждать это не лень )
Anton 🐻
Да
Petr
Причем тут права. Почитай про commandinterface сперва
да я не commandinterface туда оформил, у меня там управление redis и другими мелочными сервисами
Anonymous
@serezhaivchenko будет жить. Поприветствуем!
Сергей
Всем привет
Сергей
У меня есть небольшой вопрос: как добавить получение кастомных атрибутов в LDAP аутентификацию?
Anonymous
@BlackArray будет жить. Поприветствуем!