@symfony_php

Страница 833 из 1418
Pavel
10.04.2018
14:08:46
Timur
10.04.2018
14:09:22
этак это сериализатор или нормалайзер у тебя или енкодер?
Нормалайзер, который используется дефолтным сериалайзером Симфони

энкодер тоже дефолтный

Google
Max
10.04.2018
14:14:57
Парни, а кто-то использует gitlab ci для своих приложений?

Timur
10.04.2018
14:15:30
а чем \JsonSerializable не устроил?
А если у тебя сущность с различными связями?

Pavel
10.04.2018
14:15:57
Timur
10.04.2018
14:16:17
Не вижу проблемы
Сериалайзер симфони рекурсивно применяет нужный нормалайзер к соответствующему типу

Timur
10.04.2018
14:20:25
Просто интерфейс реализуй
У меня более сложный случай, нежели я опубликовал тут

Просто интерфейс реализуй
Ты же не будешь сервисы в сущность инджектить? Или будешь?)

Dmitriy
10.04.2018
14:21:11
$this->get не очень

Dmitriy
10.04.2018
14:21:31
делай иньекцию либо в конструктор либо в экшн

Pavel
10.04.2018
14:21:48
Ничего инжектить не нужно

Google
Timur
10.04.2018
14:22:26
я про это
Подожди чувак

Anton
10.04.2018
14:22:33
Timur
10.04.2018
14:23:10
Ничего инжектить не нужно
Ну смотри, моя сущность должна реализовать интерфейс JsonSerializable так?

Pavel
10.04.2018
14:23:21
Да

Timur
10.04.2018
14:23:37
В сущности я возращаю массив того, что мне надо, так?

Pavel
10.04.2018
14:23:44
Да

Timur
10.04.2018
14:23:54
При создании массива мне нужен кое какой сервис, как быть?

Dmitriy
10.04.2018
14:24:18
пусть масив создает сервис

либо ваще энтитю в дто

Timur
10.04.2018
14:24:41
пусть масив создает сервис
В моей имплементации так и происходит

?, атвичаю
я инжектю тайп хинтингом, просто не знал, какая версия симфы у парня

Timur
10.04.2018
14:26:13
Билдер сделай
Какой билдер?

Pavel
10.04.2018
14:27:13
Который будет формировать новый обьект

Timur
10.04.2018
14:27:42
Pavel
10.04.2018
14:29:11
Какой объект?
У кторого будет новы jsonSerialize или другие данные

Timur
10.04.2018
14:29:36
Pavel
10.04.2018
14:31:16
Не понимаю, о чем ты
Ну например тебе нужно скрыть некоторые поля или наоборот. Ты делаешь прокси класс который в конструкторе принимет вою сучность . И в этом рокси реализуй норый jsonSerialize тоько данные бери не из $this

А из обьекта переданного

Google
Pavel
10.04.2018
14:32:59
Ну вот твоя реализация и стала сложнее моей) Зачем она мне?
Хз, на счет сложности , но билдер имеет 2 метода и 1 конструктор

Фсе

У тебя прям так много

Сервисов инжектится?

Timur
10.04.2018
14:36:20
Хз, на счет сложности , но билдер имеет 2 метода и 1 конструктор
Ты по сути предложил тоже самое, что и я, так что разницы никакой. У меня UserNormalizer, у тебя ProxyUser или как ты там его назовешь. И у тебя и у меня они сервисы. Разницы в том, что у меня используется нативный сериалайзер симфони, что может привнести дополнительные удобства в дальнейшем

Правда ты еще и объект должен инжектить, а я - нет

$this->get не очень
так что ты там говорил?

У тебя прям так много
Btw можно вот так сделать: $all = $this->getDoctrine()->getRepository($class)->findAll(); $this->serializer->serialize($all, 'json')

Или так $this->serializer->serialize($all, 'xml')

Anton
10.04.2018
14:49:17
почему не заинжектить репу через конструктор? или это форич по всем возможным сущностям?

Anton
10.04.2018
14:51:20
без разницы, в контроллере или сервисе

Timur
10.04.2018
14:52:30
без разницы, в контроллере или сервисе
Зачем мне инжектить их в конструкторе контроллера?

Konstantin
10.04.2018
14:53:13
Timur
10.04.2018
14:54:19
без разницы, в контроллере или сервисе
Если у тебя 20 методов контроллера, и в каждом используются разные репозитории, ты предлагаешь заинжектить все 20 репозиториев в конструктор?

Konstantin
10.04.2018
14:55:10
это было бы фиаско братан

Timur
10.04.2018
14:55:25
Полное)

Dmitriy
10.04.2018
14:58:15
юзать контейнер не очень

типа вот этого $this->container->get($id);

Google
Timur
10.04.2018
15:00:07
Инжектить в метод
Для меня не стоит вопрос, как что-то куда-то инжектить

типа вот этого $this->container->get($id);
$this->container->get() Такого дерьма я давно не встречал ?

Herman
10.04.2018
15:00:55
Btw можно вот так сделать: $all = $this->getDoctrine()->getRepository($class)->findAll(); $this->serializer->serialize($all, 'json')
угу, а потом думать почему у нас один запрос сжирает всю память на сервере

Andrey
10.04.2018
15:01:05
юзать контейнер не очень
там ведь сервис локатор

Icewild
10.04.2018
15:02:13
не использовать findAll()

Timur
10.04.2018
15:02:24
не использовать findAll()
А использовать ... ?

Pavel
10.04.2018
15:02:27
Herman
10.04.2018
15:02:28
Твои предложения?
не использовать findAll в контроллере который могут вызвать клиенты

Icewild
10.04.2018
15:02:41
метод, который будет вытаскивать нужные тебе сущности

Pavel
10.04.2018
15:03:08
А если мне нужны все и сразу?
Есть шанмс получить 500 ошибку

Herman
10.04.2018
15:03:12
А если мне нужны все и сразу?
тогда делай свой кастомный метод который будет это хотя бы отдавать в виде массива

Urmat
10.04.2018
15:03:21
А если мне нужны все и сразу?
Вроде был метод итэрейт кажется

Pavel
10.04.2018
15:03:26
Порционно надо

Herman
10.04.2018
15:03:35
доктрина в контроллере это конечно круто

Pavel
10.04.2018
15:03:46
Я уже обосрался так один раз

Herman
10.04.2018
15:03:53
но можно и без неё

Urmat
10.04.2018
15:04:10
Google
Timur
10.04.2018
15:04:45
Есть шанмс получить 500 ошибку
Во-первых, джентльмены, это не кусок из кода моего проекта, и лишь демонстрация того, что сериалайзер способен сериализовать PersistenceCollection. Во-вторых, у меня никогда не будет там много сущностей, чтобы что-то где-то сжиралось

Timur
10.04.2018
15:05:30
Ну дерьмовый значит из тебя программист)

Herman
10.04.2018
15:05:47
Ого, вот это высокомерие

Herman
10.04.2018
15:06:28
А что плохого?
почему контроллер должен знать что у тебя за ОРМ?

Andrey
10.04.2018
15:06:59
поехали срачик?

Konstantin
10.04.2018
15:07:03
потому что ты не меняешь орм каждый день

Andrey
10.04.2018
15:07:10
почему контроллер должен знать что у тебя за ОРМ?
чем ORM хуже любой другой абстракции?

Timur
10.04.2018
15:07:16
Herman
10.04.2018
15:07:26
потому что ты не меняешь орм каждый день
ОРМ это единственный источник данных в приложении?

Pavel
10.04.2018
15:07:46
getRepository

Urmat
10.04.2018
15:08:33
почему контроллер должен знать что у тебя за ОРМ?
Эмм.. может потому-что это быстрее, чем коепать классы. Тем-более, что орм не должен меняться в проекте. БД - да, может, но не орм же. В этом то и суть орм. Или я ошибаюсь?

Timur
10.04.2018
15:09:37
Забавные ребята, пытаются применить свои блистательные шаблоны проектирования везде и всегда) Даже если это домашняя страничка. Память, доктрина в контроллере, ужас)

Timur
10.04.2018
15:12:22
Я вам вот что скажу: в телеграме 12 смайликов поездов! ???????????? Ну что, нечего сказать?!

Anton
10.04.2018
15:13:05
я немного на вентиллятор накинул, кек

Страница 833 из 1418