Михаил
https://github.com/dunglas/symfony-docker/blob/main/docs/existing-project.md
Spider
Юра
Spider
Spider
но это же один раз собрать и юзать?
Юра
Если честно я без понятия. Я собираю свой докер с нуля
Юра
В деве использую вольюм. Глядя на тот репозиторий я до конца не понимаю что там происходит
Spider
Юра
Не есть тулзы которые билдят имадж при каждом изменении файла
Юра
Как по мне изврат
Павел
спасибо - это и хотел услышать
Копируют файлы в имейдж, если пушат имейдж на прод с уже готовыми файлами, а не например пулить с гита или еще что.
Для локальной разработки - волюм
Юра
Юра
Не помню как эта штука называется
Юра
Почитал их доку и забыл сразу про них )
Павел
Spider
Вадим
привет!
подскажите как в апи платформе быть с композитными ключами, оно ругается "Unable to generate an IRI for the item of type \"App\\Entity\\AccessControl\\RolePermission\""
я добавил сущности свойство id, метод getId(), а оно всё равно
Dmitry
Привет! Подскажите, можно ли в DTO автоматически подтянуть объект?
Kirill
Kirill
final readonly class ExampleDTO
{
public function __construct(
public ExtarnalObject $object = new ExtarnalObject(),
) {}
}
Dmitry
есть две связанных таблицы, прилетает json в котором поля из дочерней и id из родительской, инициируются свойства, а где id родительской, подтягивается сам объект
Kirill
ну берёшь айдишники и два запроса в базу через where in, потом создаёшь хешмапу и раскладываешь руками
Юрий
А почему ExtarnalObject, обычно через e пишут
Михаил
Kirill
Михаил
Народ, к слову о вебсокетах.
Есть какое-нибудь селфхостед решение, чтобы одной из возможности было:
Мой сервер отправляет http запрос на этот сервис и этот сервис фанаутит это сообщение всем клиентам по вебсокету. Чисто для внутренних проектов.
Vlad
центрафуга?
Vlad
https://centrifugal.dev/
Nikolay
как приемник - Ок
Vlad
Михаил
Мне нужно от сервера к клиенту
И я слышал что сентрифугал прям овер для 20 клиентов
Nikolay
Ну что это решение как приемник годится. А чтобы клиенту отсылать как например в ноде держать состояние не получится
Vlad
Vlad
Михаил
Хотя кстати у нас на проекте вроде развёрнуто, хз
Nikolay
инициировать запрос активным клиентам?
Nikolay
зачем тогда центрифуга, если не двойное направление?
Nikolay
точнее веб сокеты в принципе
Vlad
я тут не вижу проблем
Nikolay
тут нет, совсем нет проблем
Nikolay
тут встает философская дилема, а зачем так вообще не делать если у нас только клиент инициатор событий?:)
Nikolay
зачем коннекты держать вебсокетовские
Vlad
тут уже от задачи зависит
Vlad
можно sse цепануть и все
Vlad
через ту же центрафугу
Vlad
))
Михаил
Привет. У меня phpunit 9.5
Если у меня в тесте идёт $mock->method(“fooBar”)->with($object)
Если этот метод fooBar вызывается и ожидаемый аргумент не совпадает с действительным, то я получаю
Failed asserting that two objects are equal
—- Expected
+++ Actual
@@ @@
[Некий дифф]
Но вот если метод fooBar вызывается где-нибудь внутри мессадж хендлера (в контексте symfony messenger) то я получаю эксепшон, строку Failed asserting that two objects are equal и стектрейс.
А хотелось бы получить дифф. Кто сталкивался с таким? Как лечить?
Михаил
Блин и случайно нашёл решение.
Всё дело в том что мессенжер запаковывает исключение в HandlerFailedException
Михаил
Короче вот
https://pastebin.com/YEDfs4hc
Всем пасибо
Илья
всем привет. подскажите, как можно сделать зависимые поля по типу Категория - Подкатегория ?
Илья
использую EasyAdmin
Михаил
Илья
а есть пример посмотреть?
Илья
поделитесь пожалуйста, куда копать....
Михаил
Или вот
https://dzhebrak.com/blog/translating-entities-easyadmin-doctrinebehaviors
Михаил
Тут прям с конкретным примером
Илья
ага. спасибо
Рома
всем привет
подскажите в чем проблема symfony 7
этот код генерируется классом
CREATE TABLE stmt (
id INT NOT NULL,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
status ENUM(
\ 'Active\', \'Resolved\'), message TEXT NOT NULL, comment TEXT DEFAULT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, PRIMARY KEY(id))
ошибка
In ExceptionConverter.php line 87:
An exception occurred while executing a query: SQLSTATE[42704]: Undefined object: 7 ERROR: type "enum" does not exist
LINE 1: ...55) NOT NULL, email VARCHAR(255) NOT NULL, status ENUM('Acti...
php composer_2_7_2.phar require --dev symfony/maker-bundle
./bin/console make:migration
./bin/console doctrine:migrations:migrate
#[ORM\Entity(repositoryClass: StmtRepository::class)]
class Stmt
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(type: 'string', columnDefinition: "ENUM('Active', 'Resolved')")]
private ?string $status = null;
}
Михаил
всем привет
подскажите в чем проблема symfony 7
этот код генерируется классом
CREATE TABLE stmt (
id INT NOT NULL,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
status ENUM(
\ 'Active\', \'Resolved\'), message TEXT NOT NULL, comment TEXT DEFAULT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, PRIMARY KEY(id))
ошибка
In ExceptionConverter.php line 87:
An exception occurred while executing a query: SQLSTATE[42704]: Undefined object: 7 ERROR: type "enum" does not exist
LINE 1: ...55) NOT NULL, email VARCHAR(255) NOT NULL, status ENUM('Acti...
php composer_2_7_2.phar require --dev symfony/maker-bundle
./bin/console make:migration
./bin/console doctrine:migrations:migrate
#[ORM\Entity(repositoryClass: StmtRepository::class)]
class Stmt
{
#[ORM\Id]
#[ORM\GeneratedValue]
#[ORM\Column]
private ?int $id = null;
#[ORM\Column(type: 'string', columnDefinition: "ENUM('Active', 'Resolved')")]
private ?string $status = null;
}
А что за бд? Postgres ?
Ты не можешь просто указать что это будет enum и дальше перечислить
Сначала ты должен создать тип
CREATE TYPE stmt_statuses AS ENUM (…)
И только затем указать`stmt_statuses` тип как тип поля
Рома
Рома
stmt_statuses принято так писать?
Михаил
Я не знаю, как хочешь так и пиши
Nikolay
Михаил
Михаил
Vlad
Зачем на уровне бд констрейнт не понятно
Vlad
Ну кроме ситуации когда 2 приложения пишут
Юра
https://packagist.org/packages/fresh/doctrine-enum-bundle
Рома
я его поставил, но не разобрался как он работает
Юра
Та вроде работает
Юра
Создаёшь свой тип наследуешь от их типа, регистрируешь тип в конфиге и все
Рома
а миграцию?
Vlad
А зачем оно? Если есть нативная поддержка ?
Юра
Vlad
Зачем на уровне бд констрейнт не понятно
Vlad
Ну кроме ситуации когда 2 приложения пишут