Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
banderos120

Александр Евгеньевич

Играю на балалайке
  • 64
    вклад
  • 47
    вопросов
  • 100
    ответов
  • 33%
    решений
Комментарии
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Распарсить строку на php в массив?

    banderos120
    Александр Евгеньевич @banderos120
    Зачем ? Что это ? Что за 1,2 ? Мне кажется у вас проблемы в проектировании.
    Написано более трёх лет назад
  • Как организовать Lazy Load в DDD?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    Ну пришел к выводу, что можно сделать это через коллекции, которые умеют обращаться к репозиторию.
    Написано более трёх лет назад
  • Оправданно ли использование doctrine в хелпер классе symfony 3?

    banderos120
    Александр Евгеньевич @banderos120
    redguard: не наследуйтесь от доктриновского репозитория
    Написано более трёх лет назад
  • Что вернуть из сервиса, если для продолжения обработки требуется каптча?

    banderos120
    Александр Евгеньевич @banderos120
    grabbee: Voters не про это. Voters по смыслу ближе к ролям.
    Написано более трёх лет назад
  • Как сконфигурировать DI в ZF2?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    Конечно пробовал ! По этому и прошу помощи с примером, может у тебя есть кусок готового конфига ? А то мне эти пустые наборы конфигурации ни о чем не говорят. Или снизойдешь и напишешь аналогию по примеру выше ?
    Написано более трёх лет назад
  • Как исправить ошибку Error: [$rootScope:infdig] $rootScope/infdig?p0=10 в angular?

    banderos120
    Александр Евгеньевич @banderos120
    https://docs.angularjs.org/error/$rootScope/infdig , я так понимаю в ангуляре сработало ограничение на количество вызовов $digest скоупа.
    Написано более трёх лет назад
  • Чем отличаются языки программирования PHP, PYTHON, RUBY?

    banderos120
    Александр Евгеньевич @banderos120
    Артур Нуруллин: php7
    Написано более трёх лет назад
  • Почему не работает ngModel в ngRepeat?

    banderos120
    Александр Евгеньевич @banderos120
    zagamay_ru: используйте controllerAs синтаксис. https://github.com/johnpapa/angular-styleguide#con...
    Написано более трёх лет назад
  • Как верно организовать сервисную архитектуру Symfony2 для поддержки нескольких версий API одновременно?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    Денис: меня просто вот это ввело в заблуждение:
    ------
    Или создаваться и использоваться вообще разные сервисы в зависимости от версии api.
    ------
    Обратная совместимость - это конечно должно поддерживаться, я не спорю.
    По поводу симфоневского валидатора - этим как раз-таки пользуюсь, а обертка просто для обработки ошибок и привода их к красивому виду и бросание исключения (удобны исключения, приятно принимать в контроллере). Asserts-аннотации не использую, потому как входящие данные мне все равно нужно проверять, по этому проверяю сразу через CollecitonConstraint входящий массив аргументов, плюс добавляю либо кастомные Constraints - что очень удобно, либо дополнительную логику для проверки прям на месте, если необходимо.
    Сериалайзер не подходит, потому как много логики основывается на полях было-стало, нужно для некоторых полей писать виртуальные свойства (это я от JMSSerializer набрался), плюс аннотациями забивать не хочется и т.д. Короче очень много дополнительной логики, что просто прямыми сеттерами не отделаешься.
    Написано более трёх лет назад
  • Как верно организовать сервисную архитектуру Symfony2 для поддержки нескольких версий API одновременно?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    Спасибо за ответ, хотел бы уточнить:
    -----------------------------
    По поводу
    $data = $request->request->all();

    Есть замечательные форматы, например json или xml.

    По поводу
    //throwing some ValidateException

    Валидатор не должен кидать исключения, он должен просто возвращать ошибки.
    ---------------------------
    По поводу вышесказанного, первое для примера. Хоть JSON, хоть FormData хоть XML - это не суть и к моей проблеме отношения не имеет.
    Второе - наверное я ввел вас в заблуждение, но там типо кастомный сервис, который как раз-таки принимает ошибки валидации, преобразет их, и кидает исключение.
    По поводу разных сервисов для разных версий. Мне кажется сервис не должен знать о существовании версии API, тем более, что новая версия может отличаться на уровне модели от старой, что накладывает обязанности на разные входные данные (между первой и второй версией). И мне придется, либо менять внутряк старых сервисов и использовать трансформацию данных, а потом в них же вызывать новый сервис куда буду передавать обработанные данные, либо делать трансформер в контроллере.
    По поводу валидаторов, и сериалайзеров, которые вы скидывали - не подходят, пользовался и JMSSerializer и FormType и Asserts-annotation т.д. Оказалось проще и прозрачнее использовать свои обертки над валидаторами (на основе Symfony Validation Constraints конечно). Как и вместо сериалайзеров проще использовать сеттеры, потому как очень много приходится всего дописывать к этим сериалайзерам.
    Написано более трёх лет назад
  • Как верно организовать сервисную архитектуру Symfony2 для поддержки нескольких версий API одновременно?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    Т.е. привод к актуальному виду, поступивших данных - это работа в экшене контроллера, перед передачей этих данных в сервис, ну т.е. примерно то, что я пытался тут описать в вопросе ?
    Написано более трёх лет назад
  • Как автоматом залить изображение на сервер (input type="file")?

    banderos120
    Александр Евгеньевич @banderos120
    Данил Сафонов: FileAPI, FormData , может это пригодится - habrahabr.ru/post/120917
    Написано более трёх лет назад
  • Куда выносить общие интерфейсы для бандлов?

    banderos120
    Александр Евгеньевич @banderos120 Автор вопроса
    ага, ну так и рассчитывал. Просто наблюдал картину, как такие вещи выносят в папку Domain вне бандлов.
    Написано более трёх лет назад
  • Как автоматом залить изображение на сервер (input type="file")?

    banderos120
    Александр Евгеньевич @banderos120
    Данил Сафонов: используйте FileAPI и FormData
    Написано более трёх лет назад
  • Как автоматом залить изображение на сервер (input type="file")?

    banderos120
    Александр Евгеньевич @banderos120
    Данил Сафонов: изображение откуда должно браться ?
    Написано более трёх лет назад
  • Как сделать динамический контроль доступа в Symfony2?

    banderos120
    Александр Евгеньевич @banderos120
    Дмитрий: роутинг-то у вас не динамический и префиксы стандартные есть. Так что используйте иерархии в ролях и все, а пользователям присваивайте роли.
    Написано более трёх лет назад
  • Как сделать динамический контроль доступа в Symfony2?

    banderos120
    Александр Евгеньевич @banderos120
    Дмитрий: А что вам мешает использовать иерархии ролей ?
    Написано более трёх лет назад
  • Как сделать динамический контроль доступа в Symfony2?

    banderos120
    Александр Евгеньевич @banderos120
    Дмитрий: может вот тут чего подсмотрите : symfony.com/doc/current/components/security/firewa...
    Написано более трёх лет назад
  • Как сделать динамический контроль доступа в Symfony2?

    banderos120
    Александр Евгеньевич @banderos120
    Дмитрий: а, понял. Ну самое простое, что приходит в голову - это сохранять в таблице access_path и через слушателя symfony.com/doc/current/cookbook/event_dispatcher/... проверять путь на соответствие access_path и если не соответствует, то кидать AccessDeniedHttpException() .
    Написано более трёх лет назад
  • Как сделать динамический контроль доступа в Symfony2?

    banderos120
    Александр Евгеньевич @banderos120
    access_control:
            # require ROLE_ADMIN for /admin*
            - { path: ^/admin, roles: ROLE_ADMIN }

    Т.е. это не подходит ?
    Написано более трёх лет назад
  • ← Предыдущие
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • Следующие →
Самые активные сегодня
  • Drno
    • 12 ответов
    • 0 вопросов
  • firedragon
    Владимир Коротенко
    • 8 ответов
    • 0 вопросов
  • низкомолекулярный макрос
    • 6 ответов
    • 0 вопросов
  • sergey-kuznetsov
    Сергей Кузнецов
    • 6 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 5 ответов
    • 0 вопросов
  • delphinpro
    Сергей delphinpro
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации