
Sergey
13.02.2018
08:19:48
https://www.elastic.co/guide/en/elasticsearch/resiliency/current/index.html
но вообще как бы тот же постгрес или мускуль тебе тоже полнотекстовый поиск предоставляют
всеравно "как у гугла" не получится

Google

Tex
13.02.2018
08:31:14

Sergey
13.02.2018
08:34:24

Tex
13.02.2018
08:34:49
а, окей, после "правки" понял

Sergey
13.02.2018
08:35:45
ну просто если у меня приходит строка а я ее в объект превращаю какой, или выборку из базы делаю - если валидировать уже результат мэппинга то выходит нифига не логичные ответы об ошибках данных запросов) предпочитаю производить валидацию максимально в начале.

Tex
13.02.2018
08:36:57
резонно. но выходит если мэппинг всегда 1 к 1, то получается +- тоже самое.

Sergey
13.02.2018
08:37:28
ну а если у тебя запрос и табличка в базе 1:1 и между принял http запрос и записал в базу ничего нет (может проверка прав разве что) - то можно и на сущность
но последнее часто превращается в "а вот с двумя полями из 10-ти все не так просто"
или внезапно всплывает необходимость делать ревизии
как-то был проектик который на скорую руку так вот сделали - типа с jms serializer и прочей сатаной. Быстро, просто... проект сдали а через 2 года вдруг клиент поднакопил деньжат и решил допилить, и все эти JMS потом сильно боком вышли

Tex
13.02.2018
08:40:43

Google

Andrey
13.02.2018
08:41:29


Sergey
13.02.2018
08:43:26
о, уже у которого человека в этом чате спрашиваю. что не так с jms?
основная проблема jms - сырость. Года 3 проект просто не развивался, баги не фиксились. Не знаю как сейчас. Ну и вторая проблема, в сравнении с тем же symfony/serializer - изменение данных, то есть если тебе надо данные впихнуть в имеющуся сущность тебе нельзя просто взять и дать нужный объект, тебе надо писать всякие листенеры и прочий булшит. Да и если тебе надо как-то "по особому" захэндлить десериализацию просто написать хэндлер для типа ты не сможешь. Ну то есть оно не сложно но почти всегда заканчивается тем что всплывает логика на ивентах.
короч очень негибкая штука, сделана втупую и имеет существенные ограничения по применению. Еще в 12-ом году люди на это указывали и пилили альтернативы, но как-то так сложилось что они не получили распространения.
оставили его только там где логика не нужна была
где-то две трети пришлось полностью переделать


Andrey
13.02.2018
08:45:41
Не было доктрины был соап с ораклом и редисом пришлось переписывать

Sergey
13.02.2018
08:45:54
symfony serializer отвечает за очень простую сферу дейтельности - принять данные на вход и выплюнуть на выход результат.

Tex
13.02.2018
08:46:21


Sergey
13.02.2018
08:46:47
тупая трансформация. Писать кастомные хэндлеры - это да, это нужно. А вот переписывать сам сериалайзер - это явно что-то не то

Andrey
13.02.2018
08:47:36
Нет не правильно выразился, переписывался get_set normaliser и denormalizer там были еще какие то костыли в сущностях
Через компайлер подменялся класс и делалась вся магия трансформации

Sergey
13.02.2018
08:48:06
у меня была задумка для таких - сделать отдельный гидратор + кодогенератор который был из сущностей генерил DTO 1:1 тупо что бы можно было все UI специфичные штуки туда запихнуть ну и что бы эти сущности на UoW не влияли (ну и быстрее))

Andrey
13.02.2018
08:48:21
Было давно
Надо в код лезть, лень
ну так это другое дело)
Но нормализаторы и денормализаторы часть сериалайзера а значит все же переписывал сериалайзер :)

Sergey
13.02.2018
08:49:18

Google

Sergey
13.02.2018
08:49:36

Andrey
13.02.2018
08:49:57
Ок :)

Sergey
13.02.2018
08:50:14
есть огромная разница, так как то что ты использовал - это родные extension points компонента. Вот если бы компонент не позволял тебе это сделать - тогда "переписывал"
без листенеров и как в symfony/serializer

Tex
13.02.2018
08:52:46

Sergey
13.02.2018
08:54:07
$person = $serializer->deserialize($data, Person::class, 'xml', [
'object_to_populate' => $person
]);

Tex
13.02.2018
09:01:07

Sergey
13.02.2018
09:02:25
p.s. если валидировать запрос а не результат мэппинга - то можно закрыть глаза на многое)

Artem
13.02.2018
09:23:10

Maks
13.02.2018
09:47:35
Может кто подскажет как правильно настроить READ_WRITE cache mode в доктрине ?

Alan
13.02.2018
10:15:17

Ilshat
13.02.2018
10:21:28
Подскажите, плиз. Хочу где то указать, что такие то контроллеры имеют такой-то prefix в route. Думал прокатит как в джава сделать свой (родительский) контроллер, а там прописать у него базовый роут. Но не прокатило. Как лучше такое настраивать, чтобы в каждом файле не указывать полный путь Route?

Sergey
13.02.2018
10:24:46

Ilya
13.02.2018
10:32:41

Ilshat
13.02.2018
10:40:21

Ilya
13.02.2018
10:47:03
4.1 пока нет в стабильной ветке
суть та же в routing.yml указывешь что-то типа(для 3.4 версии):
route_name:
resource: '@AppBundle/Resources/config/routing/routing/routesWithPrefix.yml'
prefix: /prefix
а в routesWithPrefix.yml перечисляешь свои контроллеры и экшены, они уже будут с префиксами

Ilshat
13.02.2018
10:48:42
или по namespace

Google

Sergey
13.02.2018
10:49:42
resource: "@App/Controller/MyController.php"
prefix: "/my"
можно так
можно весь неймспейс зарегать

Ilshat
13.02.2018
10:50:22

Admin
ERROR: S client not available

Sergey
13.02.2018
10:50:38
не уверен, не пользуюсь наследованием

Andrey
13.02.2018
10:57:20
Кто-то находил решение для отключения авто выравнивания в Configuration классах штормом?

Bohdan
13.02.2018
10:57:39

Andrey
13.02.2018
10:58:49

Andrew
13.02.2018
11:19:09
кто-нибудь юзал arangodb?

Ruslan
13.02.2018
11:31:42
Тема ок, можно линк ?

Sergey
13.02.2018
11:46:02

Max
13.02.2018
11:54:33
кто-нибудь юзал arangodb?
смотря для чего? я игрался с графами, но не было каких-то специфических задач, чтобы сравнить с orientdb очень или той же монгой. скажу, что год назад не было нормально клиента для работы, максимум коннекшен и дальше все запросы руками
если будете что-то педалить, то посмотрите на актуальность и функциональность пакетов

Вадим
13.02.2018
13:26:17
@fes0r Захотел попробовать твой бандл, RequestObjects ... но у меня появилось 2 проблемы.
1. Почему-то при валидном реквесте выдает ошибку, что поля нет, хотя оно есть
2. Как сделать вывод "path" вместо [name] просто name?
Почти все взял с примера https://gist.github.com/misterx/6a2cf4387b0f844e722922dc8780f067#file-request-json

Andrey
13.02.2018
13:55:51

Вадим
13.02.2018
13:57:43

Andrey
13.02.2018
13:58:02
это парафия symfony/validator

Google

Вадим
13.02.2018
14:16:54

Sergey
13.02.2018
15:38:35
но по факту профита от этого небыло


Marietta
13.02.2018
15:49:49
Привет гайз, вакансия на удаленку, Fullstack разработчик на долгосрочный проект
#php #js #удаленка #фултайм ставка 80-100к
Требования:
Уметь кроссбраузерно верстать HTML5/CSS3, понимать XML;
Знать и применять JavaScript (jQuery);
Уметь работать с методом запросов AJAX, разбираться в JSON;
Отлично знать минимум PHP5, но лучше PHP7;
ООП - понимать, применять, любить;
MySQL, PostgreSQL - Уметь создавать сложные запросы к БД, оптимизировать их, строить связи между таблицами;
Понимать как работают ключи и индексы;
Понимать MVC фреймворки. Опыт работы с Symfony 3 приветствуется;
Базовые навыки администрирования UNIX-систем;
Уметь правильно работать с репозиториями Git, SVN;
Уметь писать тесты к коду, и использовать их;
Условия:
Удаленная работа над одним проектом (не клиентские проекты)
Полный рабочий день, 8 часов, быть доступным для связи при необходимости в рабочее время (Скайп, тг, почта)
Зп: 80-100к на руки, от опыта и возможностей
@Mari_et


Борис
13.02.2018
15:50:26
/spam
черт, когда кликаешь на это дерьмо мышкой - оно дублируется .... хотел зарепортить спам и сам стал спамером :'(

Andrey
13.02.2018
15:52:07
А как репортить я тоже за дублировал :)
Админы должны просто удалить по идее

Вадим
13.02.2018
15:53:52

Sergey
13.02.2018
15:55:19

Вадим
13.02.2018
15:55:23

Sergey
13.02.2018
15:55:24
вообще это правило можно пересмотреть

Bohdan
13.02.2018
15:58:23