@symfony_php

Страница 210 из 1418
Sergey
17.05.2017
09:57:51
я просто аннотации юзаю)

Google
Yuriy
17.05.2017
10:40:45
подскажите пожалуйста а @ParamConverter * описывать в yml можно?

Sergey
17.05.2017
10:41:28
напиши ArgumentResolver

и тогда нигде ничего не надо писать

Daniel
17.05.2017
12:00:28
Братья, я возможно уже спрашивал про JMS Queue Bundle, а мб и нет, по поиску не удалось найти свои вопросы, сорян если повторяюсь

Вообщем не было ли у кого нибудь нареканий с ним?

Roman
17.05.2017
12:04:42
я когда-то пользовался (ооочень давно) нареканий не было а какой вопрос?

Daniel
17.05.2017
12:30:56
Ну просто у них используется JMS DI Extra, сервисы они через него не определяют конечно, но @DI\InjectParams делают охотно, а тут не так давно был момент, когда весь этот DIExtra не смог генерировать PHP классы и делать EVAL из-за сонаты)0 И вообще он там очень много mkdir делает и всяких ужасов, меняет приватные свойства, папки ресурсов конейнера: $ref = new \ReflectionProperty('Symfony\Component\DependencyInjection\ContainerBuilder', 'resources'); $ref->setAccessible(true); $ref->setValue($container, $resources);

PHP код генерит

Лезет в места, которые могут спокойно меняться и дофига чего нарушать может, там один Finder\PatternFinder чего стоит

Daniel
17.05.2017
12:58:52
Я говорю, что это обязательная зависимость для Queue Bundle

Он нужен ему

Google
Andrew
17.05.2017
12:59:14
обязательная зависимость !== активировать в аппкернеле

он нужен только для админки

а там админка встроенная убогая

Daniel
17.05.2017
13:00:59
Вон оно как

Спасибо

Andrew
17.05.2017
13:03:23
Вон оно как
если все-таки нужны будут ивенты, которые диспатчатся в репозитории - можешь его ручками зарегистрировать в DI и заинжектить зависимости

а так я юзаю - отличная штука для проектов, где кролик - оверхед, жаль что не поддерживается

Daniel
17.05.2017
13:07:31
В репе еще какой то retry_scheduler

Но делается че то типа: if ($this->retryScheduler === null) { $this->retryScheduler = new ExponentialRetryScheduler(5); }

Алексей
17.05.2017
13:11:25
Народ, есть ли аналог jsfiddle, где можно легко указывать подключаемые к коду пакеты composer?

Аналог для PHP, само собой.

Timur
17.05.2017
13:14:01
?

Алексей
17.05.2017
13:14:13
Там composer-пакеты можно разве подключать?

Timur
17.05.2017
13:14:36
Там composer-пакеты можно разве подключать?
Не знаю, но написано вот это Provide a dedicated MySQL database and best chosen PHP libraries from open resources

Алексей
17.05.2017
13:16:10
Ну он мало чего предоставляет. Мне вот, например, надо пример с Guzzle накидать.

Andrew
17.05.2017
13:18:39
Но делается че то типа: if ($this->retryScheduler === null) { $this->retryScheduler = new ExponentialRetryScheduler(5); }
повторюсь - ты его легко можешь зарегистрировать в DI ручками и не нужно будет подключать кучу гуано

если необходимость есть

лучше 3-4 сервиса быстренько прописать чем весь DiExtra заиметь

Sergey
17.05.2017
13:20:14
уже меньше чем 2 недели осталось до 3.3 релиза

Google
Sergey
17.05.2017
13:20:18
готовы апдейтится?)

Salavat
17.05.2017
13:20:39
Неа.. там же все по-новому?)

Aleh
17.05.2017
13:20:57
там di хороший

Sergey
17.05.2017
13:21:03
ну не то чтобы все, есть много фичей с DI

которые с радостью затащу на проект

Daniel
17.05.2017
13:22:03
Кто то говорил, что там необходимо будет сервисы по FQCN именовать

Dinar
17.05.2017
13:22:10
А много сложностей будет с обновлением с 2.8?

Sergey
17.05.2017
13:22:11
опционально

Dinar
17.05.2017
13:22:19
Мы просто собираемся на 3.2 пересаживаться.

Sergey
17.05.2017
13:22:23
ну с 2.8 главное до 3.0 обновиться

Dinar
17.05.2017
13:22:24
Я подумал, может сразу на 3.3?

Ну да.

Dinar
17.05.2017
13:22:30
Это так

Депрекейты все удалить

Sergey
17.05.2017
13:22:38
а 3.0 и выше уже без проблем

Кто то говорил, что там необходимо будет сервисы по FQCN именовать
их давно так можно было именовать, я на 3.2 версии так делаю с новыми сервисами

Salavat
17.05.2017
13:23:34
То есть если проект на 3ке - то ничего страшного?

Daniel
17.05.2017
13:23:41
Да то что можно было - это понятно

Sergey
17.05.2017
13:23:42
не. ничего не сломается

Daniel
17.05.2017
13:23:46
А вот насколько удобно..

Google
Sergey
17.05.2017
13:23:53
оч удобно

Daniel
17.05.2017
13:23:56
Вот в yml файликах писать namespaces

Ладно еще делать ->get(ServiceClass::class)

Это да

А вот в конфиге.. Копировать namespace

Sergey
17.05.2017
13:24:24
жмешь правой кнопкой на класс

Copy Reference

и вставляешь в свой yml

Daniel
17.05.2017
13:24:36


Salavat
17.05.2017
13:24:49
А что значит FQCN?

Admin
ERROR: S client not available

Sergey
17.05.2017
13:25:02
fully qualified class name

Salavat
17.05.2017
13:25:06
фулл кваливид клас нейм

это я прочитал ) что оно значит-то?)

Dinar
17.05.2017
13:25:16
А вот в конфиге.. Копировать namespace
А разве Symfony Plugin не работает?

Daniel
17.05.2017
13:25:37
А разве Symfony Plugin не работает?
При вводе имени сервиса он же ничего не дополняет

Только когда class: начинаем заполнять

Dinar
17.05.2017
13:25:48
Ну так будет, как релиз сделают

Обновят

Daniel
17.05.2017
13:25:54
О

Google
Dinar
17.05.2017
13:26:07
Они вроде как быстро это делают

Sergey
17.05.2017
13:26:08
мне еще нравится psr based discovery фича

Daniel
17.05.2017
13:26:22
А если кто то не хочет использовать FQCN.. Обалдеть глаза резать будет

Sergey
17.05.2017
13:26:25
всякие репозитории автоматически регать

Dinar
17.05.2017
13:27:04
То есть DI теперь будет выглядеть громоздко?

Ведь в секции arguments будут FQCN

Sergey
17.05.2017
13:27:26
наоборот не

Dinar
17.05.2017
13:27:56
Ну алиас можно сделать коротким

А классы-то нет

Sergey
17.05.2017
13:28:38
services: App\Foo\Bar: ~ куда проще чем services: app.foo.bar: class: App\Foo\Bar arguments: ...

меня всегда бесило самому писать алиасы

Dinar
17.05.2017
13:29:44
services: App\Foo\Bar: arguments: - \Bar\Baz - \Baz\Quux

Daniel
17.05.2017
13:29:58
Блин, как я не люблю масштабные изменения в привычной работе...

Sergey
17.05.2017
13:30:23
services: App\Foo\Bar: arguments: - \Bar\Baz - \Baz\Quux
аргументы можно не указывать, автовайринг же)

Dinar
17.05.2017
13:30:35
Ну так не всегда ж хорошо

А если у меня интерфейс?

Sergey
17.05.2017
13:30:58
ну еще можно в одну строку написать App\Foo\Bar: ["@Bar\Baz", "@Baz\Quux"]

а в чем проблема с интерфейсом?

Dinar
17.05.2017
13:31:19
Ну это пример с короткими неймспейсами :)

А могут же быть и намного длиннее

Sergey
17.05.2017
13:31:44
ну хз Bar\Baz vs bar.baz

Dinar
17.05.2017
13:31:46
Ну у меня несколько классов расширяющих интерфейс

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