Vlad
Да проще уже свой/свои атрибуты сделать
Vlad
Хз нахуя это объединили в один. Сделали бы FromQuery, FromBody как в шарпе и не изголялись
Vlad
Это самая сомнительная фича вообще
Юра
page=123 . Нет страницы 404 ок согласен page=asd, невалидный параметр 400. По логике как-то вроде так должно быть
Юра
Или логика у них типо что там что там такого ресурса нет по такому урлу, а причина в тексте ошибки может?
Юра
Может и так. Но оно должно настраиваться в любом случае )
Vlad
Эту фичу мог внедрить любой с момента появления атрибутов в пчп, но сделали так как сделали
Юра
Ла просто хочется какой-то стандартный вариант из коробки, а то каждый пилит свой велосипед
Vlad
Ла просто хочется какой-то стандартный вариант из коробки, а то каждый пилит свой велосипед
Просто прими тот факт, что это сделали за рекламу на сайте. Фабиен тоже кушац хочет. Фича ок, реализация с 8.0 у всех +- одинаковая будет у всех, запиздяч свою реализацию и все
Vlad
Текущая говно, потому что вот лейбл на сайте стоит денег. Зато baked by zalupa-development
Юра
Мож на шарп перейти ? )
Юра
Там все бекед бай Майкрософт и все
Vlad
Там все бекед бай Майкрософт и все
Там своих приколов достаточно
Vlad
Если ты думаешь что в Майкрософт сидят гении, то это тоже не так. Там приколистов побольше даже
Null
Мож на шарп перейти ? )
Переходи на ларавел
Null
Тебе симфони приколы потом покажутся весьма логичными и оправдаными
Юра
Я уже пробовал этот ларавел
Юра
Тогда уж лучше перейти на spiral
Иван
Тогда уж лучше перейти на spiral
@SerafimArts расскажи им про спираль!
Kirill
Хз что рассказывать. Ну такое, симфа лучше
Иван
Хз что рассказывать. Ну такое, симфа лучше
надо форкнуть и переписать на kphp!
Ivan
page=123 . Нет страницы 404 ок согласен page=asd, невалидный параметр 400. По логике как-то вроде так должно быть
оба варианта должны 404 отдавать, т.к. пытаются запросить несуществующую страницу
Павел
оба варианта должны 404 отдавать, т.к. пытаются запросить несуществующую страницу
С фильтрацией сложности будут. Имхо невалидная фильтрация не должна отдавать 404
Ivan
С фильтрацией сложности будут. Имхо невалидная фильтрация не должна отдавать 404
А в чем невалидность то? Почему page не может быть main\contact\rules\offer и т.д. ?
Ivan
С фильтрацией сложности будут. Имхо невалидная фильтрация не должна отдавать 404
тут тогда для двух этих вариантов отдавать либо 400 либо 404. А то так двойные стандарты)
Павел
А в чем невалидность то? Почему page не может быть main\contact\rules\offer и т.д. ?
Я не про конкретный кейс с page а про серчи. Например есть серч по какому то enum status. Если я ввел невалидный енам, ну чет 404 как то не то
Ivan
Разные код может быть например в такой ситуации page=123 - 404 code pages=123 - 400 code
Павел
тут тогда для двух этих вариантов отдавать либо 400 либо 404. А то так двойные стандарты)
Так по сути разные флоу : 1) Ищем ресурс по query - тут 404 как раз четко 2) Фильтруем список - тут 400 , хотя по сути фильтрацию и валидировать наверное смысла мало, но мало ли кто как делает.
Ivan
вообще привазывать бизнес логику к хттп кодам это плохой вариант
Павел
вообще привазывать бизнес логику к хттп кодам это плохой вариант
А как она связана? Тем более на чтение например. Это скорее локальные правила ответов апи
Павел
ну так локальные правила это разве не бизнес логика?)
Локальные правила http кодов? Нет. Хоть 500 будет эта либа отдавать вместо 404. На бизнес логику это не повлияет.
Ivan
Локальные правила http кодов? Нет. Хоть 500 будет эта либа отдавать вместо 404. На бизнес логику это не повлияет.
Тогда я не понимаю что ты вкладываешь в фразу "локальные правила ответов апи"
Павел
Тогда я не понимаю что ты вкладываешь в фразу "локальные правила ответов апи"
Ну что кто-то хочет отдавать 404, а кто то 400 в случае если query параметр не валидный
Ivan
400 http code вполне однозначно трактуется Если запрос ждет json а пришел xml - то это 400 ошибка
Павел
400 http code вполне однозначно трактуется Если запрос ждет json а пришел xml - то это 400 ошибка
Ошибка 400 Bad Request – это код ответа HTTP, который означает, что сервер не смог обработать запрос, отправленный клиентом из-за неверного синтаксиса Формат запроса тут не звучит, как однозначноый флоу
Ivan
если есть параметр page, но он может быть только определенного диапазона или из определенного енама то это 404
Павел
если есть параметр page, но он может быть только определенного диапазона или из определенного енама то это 404
Зачем мне видеть 404 при запросе на пагинацию? Я что обратился к несуществующему ресурсу?
Ivan
если есть параметр page, но он может быть только определенного диапазона или из определенного енама то это 404
Но на самом дела и это плохой вариант, с точки зрения http код должен быть 200 а уже в теле ответа указывать что page неверный
Юра
Я там создал уже пул реквест. Зачем эти споры все бесполезные если можно это настройкой контролировать какой код возвращать
Юра
Фреймворк это инструмент он должен позволять такие штуки настраивать
Diana Dvoryak
Diana Dvoryak
бд после тестов не очищается, что делать?
Vlad
Какие тесты хоть?
Юра
А чего close должен очищать бд?
Юра
Там вроде есть плагин для пхп юнит который каждый тест в транзакции запускает и ролбечит
Dmitriy
Пагинация 200
Юра
Это какой-то зашифрованый вариант груз 200?
The Ant
Зачем мне видеть 404 при запросе на пагинацию? Я что обратился к несуществующему ресурсу?
Шобы поисковик не индексировал пустые страницы. И ошибки не писал. 404 контент не найден в том числе.
Павел
Шобы поисковик не индексировал пустые страницы. И ошибки не писал. 404 контент не найден в том числе.
Это можно через noindex если нет найденного. Ну и апи поисковик не индексирует. Но в целом как вариант, засчитан.
The Ant
Гугле нынче прекрасно индексирует спа сайты. Но как именно оно там работает я не знаю. Как по мне лучше 404 отдавать
The Ant
Вполне возможно учитывает код ответа по апи
The Ant
да и при проектировании апи придерживаться принципа устойчивости (https://en.wikipedia.org/wiki/Robustness_principle#:~:text=In%20computing%2C%20the%20robustness%20principle,liberal%20in%20what%20you%20accept%22.) Типа принимаем любое говно, отдаем что нашлось. Хотя я м.б. его не верно понимаю 😄 валидировать фильтры такое себе, оно еще и пиздец какое медленное
Diana Dvoryak
А чего close должен очищать бд?
по видео копирую, в видео норм, а у меня уже 100 одинаковых категорий, почему на видео проходят тесты, а у меня нет?
Юра
Спроси у автора видео может
Diana Dvoryak
Спроси у автора видео может
Всё, я поняла, это из-за фикстур тест не проходил
SK
Народ у меня encore билдит ассеты. Делают npm audit - выдаёт кучу уязвимостей. audit fix делает ничего, update/upgrade тоже. Вопрос - как сделать апдейт энкору ?
SK
использовать sqlite
SK
encore 4.3.0 symfony 4.4
Vlada
Всем привет, такая проблема , хочу отдать файл на загрузку в браузер , но он его сразу скачивает без окна где можно выбрать место загрузки файла либо изменить его имя. Если что я уже пробовала гуглить и брать headers которые там предлагают , но оно все равно не работает , может вы подскажите интересный вариант , можно и на чистом php
Юра
А как пользователь переходит на загрузку?
Vlada
а там просто пост запрос по сути
Vlada
Щас расскажу весь процесс
Юра
Я точно знаю способ через джаваскрипт
Vlada
Щас расскажу весь процесс
1)При нажатие на кнопку с базы вытягиваются данные 2)Мы эти данные формируем в json 3)Хочу чтобы пользователь по итогу получил example.json с моими данными Сейчас я получаю - файл автоматически скачивается без прелюдий
Vlada
А надо чтобы пользователь имел шанс выбрать место загрузки либо название файла
Павел
Я точно знаю способ через джаваскрипт
Тут вопрос имеет ли js доступ к ФС
Vlada
Такогой возможности серверной вроде нет, на фронте - уже вопрос
это все делается в easy admin и фронт я ничего не делаю , так что онли контролер имею
Павел
Тут вопрос имеет ли js доступ к ФС
Так как слишком опасно при посещении сайта, чтобы сайт мог сохранять что то на диски
Юра
Там такой флоу. Аякслм получаешь контент. Джаваскриптом создаётся элемент A ему ставится dataUrl и потом тригерится click()
Юра
https://blog.logrocket.com/programmatically-downloading-files-browser/ Тут написано подробно про этот способ
Юра
Точно?
Павел
https://blog.logrocket.com/programmatically-downloading-files-browser/ Тут написано подробно про этот способ
Это флоу, как с помощью js загрузить файл в дефолтную папку, как и другие файлы
Павел
Типа есть ссылка, а хочется скачать по ней контент