Size: a a a

2021 March 02

MF

Misha Fomin in symfony
спасибо!
источник

A

Andrey in symfony
Всем привет. Подскажите как найти какой элемент из коллекции удален через форму? getOriginalEntityData и getEntityChangeSet не помогли
источник

VK

Vladyslav Kopaihorod... in symfony
Andrey
Всем привет. Подскажите как найти какой элемент из коллекции удален через форму? getOriginalEntityData и getEntityChangeSet не помогли
цикл форич может помочь
источник

VK

Vladyslav Kopaihorod... in symfony
берешь все элементы которые рендерил, берешь форму, запускаешь foreach , добавляешь щепотку if else и вуаля
источник

A

Andrey in symfony
Vladyslav Kopaihorodskyi
цикл форич может помочь
А как взять все елементы которые рендерил после сабмита формы?
источник

Ш

Шурик in symfony
Andrey
А как взять все елементы которые рендерил после сабмита формы?
Скопируй их куда-то перед сабмитом формы, например
источник

VK

Vladyslav Kopaihorod... in symfony
Andrey
А как взять все елементы которые рендерил после сабмита формы?
old_data, new_data  и сравнивай)
источник

VK

Vladyslav Kopaihorod... in symfony
но коллекции в формах это боль и страдания
источник

МК

Мирко Крокоп... in symfony
Приветствую, ребята!

Подскажите, пожалуйста, а в Symfony можно как то создать фикстуру с нужным ID?

Т.е. в чем цель. В БД есть таблица с 5 элементами, у которых никогда не меняются ID. Мы на них и завязались (знаю, что надо было добавить доп поле код или что то вроде того, но исторически уже так сложилось).
Теперь покрываю тестами, создаю фикстуры в данной таблице и... они создаются с рандомными ID, а не в диапазоне 1-5. Соответственно, тесты падают.

Подскажите, пожалуйста, можно ли как то создать фикстуру с нужным ID, не добавляя самой моделе метод типа setId() (это уже совсем костыльно будет).

Благодарю за любою помощь или ссылочки по теме.
источник

VK

Vladyslav Kopaihorod... in symfony
можно, просто укажи айди
источник

VK

Vladyslav Kopaihorod... in symfony
)))
источник

VK

Vladyslav Kopaihorod... in symfony
а как ты фикстуры создаешь?
источник

МК

Мирко Крокоп... in symfony
Vladyslav Kopaihorodskyi
а как ты фикстуры создаешь?
$this->createMany(
           MyClassTarget::class,
           5,
           function (MyClassTarget $myClassTarget) {
               $myClassTarget->setName($this->getFaker()->text('255'));
           }
       );

Где 5 - это количество, а третий параметр - колбэк. Метод setName принадлежит модельке. Аналогичного для id метода нет и заводить не хочется, чтобы ни кто не вздумал заюзать его и в других местах)
источник

VK

Vladyslav Kopaihorod... in symfony
Мирко Крокоп
$this->createMany(
           MyClassTarget::class,
           5,
           function (MyClassTarget $myClassTarget) {
               $myClassTarget->setName($this->getFaker()->text('255'));
           }
       );

Где 5 - это количество, а третий параметр - колбэк. Метод setName принадлежит модельке. Аналогичного для id метода нет и заводить не хочется, чтобы ни кто не вздумал заюзать его и в других местах)
ну и что ты ждешь тогда от нас ?)
источник

VK

Vladyslav Kopaihorod... in symfony
я в своем первом проекте норм абузил setID() 🙂
источник

JK

Jeka Kovtun in symfony
Мирко Крокоп
$this->createMany(
           MyClassTarget::class,
           5,
           function (MyClassTarget $myClassTarget) {
               $myClassTarget->setName($this->getFaker()->text('255'));
           }
       );

Где 5 - это количество, а третий параметр - колбэк. Метод setName принадлежит модельке. Аналогичного для id метода нет и заводить не хочется, чтобы ни кто не вздумал заюзать его и в других местах)
Это вопрос не про Symfony. ))
Как костыль, можно обойтись малой кровью с помощью Reflection. Но такое ~~
источник

МК

Мирко Крокоп... in symfony
Jeka Kovtun
Это вопрос не про Symfony. ))
Как костыль, можно обойтись малой кровью с помощью Reflection. Но такое ~~
Кстати, о reflection совсем забыл... Сейчас подумаю, возможно, этот вариант и подойдёт для тестов!)
источник

AC

Andru Cherny in symfony
Ребята привет. Подскажите по симфе DI. Короче есть самописный багндл, в котором я внутри настраиваю класс, и там я делаю addMethodCall для того чтоб застеить логгер, и я хочу чтоб у этого логгера был отдельнгый канал. Но пока не знаю как это сделать.
            ->addMethodCall('setLogger', [new Reference('logger')])
           ->addTag('monolog.logger', ['channel'=> 'test']);

Так не работает. Кто-то сталкивался?
источник

AB

Alexander Borisov in symfony
Я использую PrependExtensionInterface
```
public function prepend(ContainerBuilder $container)
{
   if ($container->hasExtension('monolog')) {
       $container->prependExtensionConfig('monolog', [
           'channels' => ['test']
       ]);
   }
}

```
и вместо logger исползую `monolog.logger.test`
источник

DW

Dev Wolk in symfony
Народ, кто юзал symfony api-platform в продакшене, как оно было, удобно?
источник