Алексей Анатольевич
спасибо, сэкономил время для сна)
artem
Кто работал с мессендж. Объясните ещё раз зачем его применять. Доки все скушал, сейчас уже смотрю индусов, и вообще не выкупаю
artem
И ещё, зачем нужны теги в сервисах в двух словах) я это знал но забывается
artem
Гугл забанил*)
Dmitry
Дмитрий
вкатываюсь в symfony + api platform, сижу настраиваю Entity и смотрю на сгенерированный swagger и меня смущают связи
есть у меня 2 Entity: Client и Project
у проекта связь с клиентом
#[Groups(['user:read', 'user:write'])]
#[ORM\ManyToOne(targetEntity: Client::class, inversedBy: 'projects')]
#[ORM\JoinColumn(nullable: false)]
private $client;
при добавлении проекта такую схему ждет API
{
"client": {
"name": "string",
"comment": "string"
},
"name": "string",
"comment": "string"
}
связь сработала это прекрасно, вот только это как-то неправильно, ведь вместо
"client": {
"name": "string",
"comment": "string"
},
хочется просто передать clientId, что я делаю не так? или лучше отказаться от связей и сделать простой атрибут clientId?
Vlad
клиент тоже ресурс?
Дмитрий
да
Vlad
прям точно точно, атрибут весит? Странно
Дмитрий
решил проблему, с группами перемудрил... вернее не знал про такую фичу ))
artem
https://github.com/symfony/html-sanitizer
кто уже юзал?
Иван
Иван
судя по доке, нормальная штука
Дмитрий
я юзаю https://github.com/voku/anti-xss c ytpfgfvznys[ dhtvty
Дмитрий
и симфони активно херачит свои компоненты, где надо и где не надо
Дмитрий
причем не все их компоненты так уж хороши, а некоторые даже проигрывают по производительности другим известным либам
Иван
Дмитрий
если бы они были все как на подбор бриллиантами, то нет проблем, но увы
Иван
https://t.me/symfony_ru/43496
мы сегодня столкнулись с тем, что от валидатора и от JMS в разных форматах приходят сообщения о невалидности
в результате фигня
artem
Го альтернатив. У меня собес через час. Что могу упустить от 5.1 до 8.1?
artem
По изменениям, кроме jit и возвращаемым типам
artem
https://habr.com/ru/post/526220/
Нашел, но все ещё не пойму зачем Stringable
Vite4eg
https://www.php.net/manual/ru/class.stringable.php
Его основное значение - разрешить функциям выполнять проверку типа на соответствие типу union string|Stringable, чтобы принимать либо строковый примитив, либо объект, который может быть преобразован в строку.
Иван
Alexey Mishurovskiy
Вопрос - а если у нас в Entity подключен UuidTrait с маппингом и мне надо написать кастомное описание для Swagger. Получается придется копировать все аннотации из трейти а переностить их в класс, иначе доктрина падает и не видит колонку.
Alexey Mishurovskiy
Это потенциальное слабое место в системе. как можно это решить ?
Alexey Mishurovskiy
Alexey Mishurovskiy
Alexey Mishurovskiy
вот так работает.
Alexey Mishurovskiy
darkwoolf
Если продукт имеет связь до избраного(то есть юзеру в таблице ManyToMany) то добавить флаг(то есть поле которого нету в БД) is_favorite = true, а иначе false и сделать это через QueryBuilder
Кто-то может подсказать как это можно сделать?
Sergey
Всем привет. Подскажите пожалуйста способ Парсинга стрима с xml. Проблема в том, что xml может быть большим, а нкжен только один тег из него. В качестве клиента используется guzzle. Но чем распарсить стрим не могу найти
Anton
SimpleXML?
Sergey
Simplexml требует string в качестве данных.
Anton
Ау, увидел что стрим
Anton
Извиняюсь
artem
Vlad
Shokha
Добрый день!
Как можно включать кеш для схема база данных чтобы каждый раз не было этих запросов
Юра
Их и не должно вроде быть каждый раз
Shokha
Их и не должно вроде быть каждый раз
С этой уже разобрался у меня еще один вопрос есть насчет Doctrine
#[ORM\Column(name: "show_id", type: 'integer')]
private int $showId;
вот есть такая колонка он должен автоматически заполнится и должен начинаться с 100000
Юра
Думаю надо в миграции установить sequence
Юра
У тебя ж постгрес судя по всему
Shokha
Юра
Ну делай alter sequence или как там оно
Юра
Я просто ненавижу постгрес, точно не подскажу
Юра
Думаю у доктрины нет такого
Юра
Потому что у каждой бд свои приколы
Юра
Это не совсем default
Юра
А блин
Юра
Я подумал ты про автоинкремкнт
Юра
Там есть поле options
Юра
Через него default передается
artem
Vlad
Иван
Иван
https://www.youtube.com/watch?v=DEk56xbMITo
вот в очередной раз убеждаюсь, что @vudaltsov был прав, а мы нет
потому что трейты используются как попало и на малейшем чихе приходится код из трейта копировать взад назад в класс
Иван
и setuuid - это вообще серьёзно было?
Alexey Mishurovskiy
трейты только в сущностях.
Alexey Mishurovskiy
Иван
а в чем проблема
в том, что uuid устанавливается только в конструкторе однократно
Alexey Mishurovskiy
Иван
нет никакого setUuid в реальной жизни объекта
Иван
Alexey Mishurovskiy
и вообще у меня был конкретный вопрос. спасибо за видео Валентина, посмотрю.
Иван
ну вот конкретная лажа случается, что как только надо написать аннотации/атрибуты, которых нет в трейте, надо затаскивать трейт целиком или частично в класс
переиспользование получается такое переиспользование, что лучше никакого, чем так
трейты должны быть бриллиантово безупречные, или никаких не надо
иначе любой косяк аффектит неопределённое количество классов и любое исправление потом тоже
Alexey Mishurovskiy
Vlad
Юра
Ну например при переносе данных импорт экспорт были проблемы и ошибки связанные с ownerom
Anton
Нужен пример)))
Имеется ввиду скорее всего что не похож на базы, которыми пользовались до этого. У меня по крайней мере похожие ощущения)