Size: a a a

2021 January 19

s

s4b0t in symfony
Artem Vasilenko
Уточнение это консюмер который посстоянно работает
$em->refresh($entity)
источник

AV

Artem Vasilenko in symfony
s4b0t
$em->refresh($entity)
Меня интересует отключить совсем, а не рефрешить и чистить
источник

AV

Artem Vasilenko in symfony
каждый раз
источник

VM

Volodymyr Melko in symfony
Нет, ем это один из столпов доктрины
источник

VM

Volodymyr Melko in symfony
Ну всмысле идентити мап
источник

VM

Volodymyr Melko in symfony
Но для воркеров так то это стандартный путь после каждой джобы делать clear
источник

AV

Artem Vasilenko in symfony
Он мне в консюмерах не нужен
источник

AV

Artem Vasilenko in symfony
Volodymyr Melko
Но для воркеров так то это стандартный путь после каждой джобы делать clear
Я уже понял что вариантов у меня не много
источник

VM

Volodymyr Melko in symfony
Artem Vasilenko
Я уже понял что вариантов у меня не много
ну если доктрина создает тебе больше проблем чем дает бенефитов, то не используй ее вцелом, зачем же так страдать
источник

BR

Bot Razraba in symfony
Подскажите, по поводу сериализатора и десириализатора

Это в конструкторе -

$reflectionExtractor = new ReflectionExtractor();
$phpDocExtractor = new PhpDocExtractor();
$encoder = [new JsonEncoder()];
$extractor = new PropertyInfoExtractor([$reflectionExtractor], [$phpDocExtractor, $reflectionExtractor], [$phpDocExtractor], [$reflectionExtractor], [$reflectionExtractor]);
$normalizer = [new DateTimeNormalizer(DateTime::ATOM), new ArrayDenormalizer(), new ObjectNormalizer(null, null, null, $extractor)];
$this->serializer = new Serializer($normalizer, $encoder);

Вот этот json {"userUuid":"666666","token":"555555","createdAt":"2021-01-19T19:20:32+00:00","expiresAt":"2021-01-19T19:20:32+00:00","userInformation":["tru1","tru2"]}

Сериализует объект в json тут всё норм, но при десириализации вложенность в объект не возвращает. userInformation - пустой. Как с этим работать?
источник

DA

Danil Andreyev in symfony
Bot Razraba
Подскажите, по поводу сериализатора и десириализатора

Это в конструкторе -

$reflectionExtractor = new ReflectionExtractor();
$phpDocExtractor = new PhpDocExtractor();
$encoder = [new JsonEncoder()];
$extractor = new PropertyInfoExtractor([$reflectionExtractor], [$phpDocExtractor, $reflectionExtractor], [$phpDocExtractor], [$reflectionExtractor], [$reflectionExtractor]);
$normalizer = [new DateTimeNormalizer(DateTime::ATOM), new ArrayDenormalizer(), new ObjectNormalizer(null, null, null, $extractor)];
$this->serializer = new Serializer($normalizer, $encoder);

Вот этот json {"userUuid":"666666","token":"555555","createdAt":"2021-01-19T19:20:32+00:00","expiresAt":"2021-01-19T19:20:32+00:00","userInformation":["tru1","tru2"]}

Сериализует объект в json тут всё норм, но при десириализации вложенность в объект не возвращает. userInformation - пустой. Как с этим работать?
Дебагом обжект нормалайзера
источник

DA

Danil Andreyev in symfony
Bot Razraba
Подскажите, по поводу сериализатора и десириализатора

Это в конструкторе -

$reflectionExtractor = new ReflectionExtractor();
$phpDocExtractor = new PhpDocExtractor();
$encoder = [new JsonEncoder()];
$extractor = new PropertyInfoExtractor([$reflectionExtractor], [$phpDocExtractor, $reflectionExtractor], [$phpDocExtractor], [$reflectionExtractor], [$reflectionExtractor]);
$normalizer = [new DateTimeNormalizer(DateTime::ATOM), new ArrayDenormalizer(), new ObjectNormalizer(null, null, null, $extractor)];
$this->serializer = new Serializer($normalizer, $encoder);

Вот этот json {"userUuid":"666666","token":"555555","createdAt":"2021-01-19T19:20:32+00:00","expiresAt":"2021-01-19T19:20:32+00:00","userInformation":["tru1","tru2"]}

Сериализует объект в json тут всё норм, но при десириализации вложенность в объект не возвращает. userInformation - пустой. Как с этим работать?
А как выглядит phpdoc этого поля?
источник

DA

Danil Andreyev in symfony
И само поле
источник

BR

Bot Razraba in symfony
Danil Andreyev
Дебагом обжект нормалайзера
Дело в том что объект собирается, вложенность отсутствует
источник

BR

Bot Razraba in symfony
Danil Andreyev
А как выглядит phpdoc этого поля?
ArrayCollection
источник

BR

Bot Razraba in symfony
Danil Andreyev
И само поле
...\UserToken {#255 ▼
 -userUuid: "666666"
 -token: "555555"
 -createdAt: DateTime @1611084032 {#338 ▼
   date: 2021-01-19 19:20:32.0 +00:00
 }
 -expiresAt: DateTime @1611084032 {#328 ▼
   date: 2021-01-19 19:20:32.0 +00:00
 }
 -userInformation: ...\ArrayCollection {#317 ▼
   -elements: []
 }
}
источник

BR

Bot Razraba in symfony
Bot Razraba
...\UserToken {#255 ▼
 -userUuid: "666666"
 -token: "555555"
 -createdAt: DateTime @1611084032 {#338 ▼
   date: 2021-01-19 19:20:32.0 +00:00
 }
 -expiresAt: DateTime @1611084032 {#328 ▼
   date: 2021-01-19 19:20:32.0 +00:00
 }
 -userInformation: ...\ArrayCollection {#317 ▼
   -elements: []
 }
}
Вот так после десириализации json-a
источник
2021 January 20

SP

Sergey Protko in symfony
Так вот, любители doctrine:migration:diff - как делать индексы по выражениям? Неужели нет досих пор кастылей и велосипедов?

Например хочу я ускорить какую-то выборку за счет простого индекса some_table ((LOWER(some_column)) или чего более занятного - такой вот индекс для "булевых полей" - some_table ((1)) WHERE some_column is not null AND some_other_column some other condition
источник

SP

Sergey Protko in symfony
что занятно - where в опции добавили для индексов а выражения не хотят ибо платформо зависимо. Пока смотрю в сторону переопределения platform_service но шот как-то грустно что этого нет.
источник

D

Dmitry in symfony
Я не нашёл способа. Пришлось руками делать фуллтекст индекс и каждый раз править руками миграцию при Диффе. Присоединяюсь к вопросу
источник