@symfony_php

Страница 269 из 1418
Sergey
07.08.2017
13:10:29
ну просто еще не на все интерфейсы есть алиасы у них

приходится явно прописывать зависимости

или алиасы делать как Ivan говорит

так что если сделаешь PR, то 90% шансов что его примут)

Google
Alexander
07.08.2017
13:41:19
Может кто сталкивался. Обновил проект до 3.3. Не появилась вкладка cache в профайлере. Если создавать проект с нуля то вкладка присутствует. Видимо что-то где-то забыл прописать, но вот что и где - понять не могу

Sergey
07.08.2017
13:41:49
может у тебя кеш не используется?)

Alexander
07.08.2017
13:41:57
Используется :)

Он используется по умолчанию самой симфони, так что вкладка быть должна (судя по пустому проекту)

Sergey
07.08.2017
13:44:26
я у себя ее отключал, потому что она дико лагала

а из-за количества обращений к кешу просто не показывалась иногда даже

проверь еще в конфигах, не отключал ли явно ничего

Alexander
07.08.2017
13:45:14
А где там?

Проект старый, отключать не мог. Может надо где-то отдельно ее конфигурировать?

Dinar
07.08.2017
14:05:04
The render tag is deprecated in favor of the render function. Что это значит?

Ivan
07.08.2017
14:07:23
The render tag is deprecated in favor of the render function. Что это значит?
тэг "render" устарел, юзайте функцию "render"

Dinar
07.08.2017
14:08:36
Перевод понимаю.

Что за тег рендер? :)

Google
Ivan
07.08.2017
14:09:03
{% render

Dinar
07.08.2017
14:09:22
А функция?

Ivan
07.08.2017
14:09:37
{{ render(

Dinar
07.08.2017
14:09:52
`{%- render(controller('CAApiBundle:TrivagoApi:getReviewsForReviewConfig', {'reviewConfig': reviewConfig.id, 'key' : app.request.get('key')})) -%}`

Это же не тег?

Ivan
07.08.2017
14:10:25
тег же

Dinar
07.08.2017
14:10:38
Ок.

Как написать, чтобы стало функцией?

Ivan
07.08.2017
14:11:19
проценты заменить на фигурные скобки?

Aleh
07.08.2017
14:11:22
{{ render(controller(‘…

Dinar
07.08.2017
14:11:26
{{ }}?

Все догнал :)

Сообразил. Внимания не обратил совсем

Спасибо :)

Alexander
07.08.2017
14:25:19
может, кэш почисить?
первым делом сделал... при этом прописал dump() в CacheDataCollector - все собирается

Alexander
07.08.2017
14:28:47
Да

Alex
07.08.2017
14:50:26
Ребят, хочу сделать телеграмм бота с простеньким функционалом: обращение к базе, ответ пользователю. Но управление данными в базе хочу сделать на основе какой нибудь админки. Есть какие нибудь удобные cmsки для symfony? Или проще самому накидать?

Alexander
07.08.2017
14:55:39
а по url вызывается? ?panel=cache
Разобрался... В профайлере выводится только данные по последнему реквесту. Судя по всему {{ render(controller(... }} сбрасывает собранные данные

Google
Andrii
07.08.2017
17:46:48
https://crudkit.com/ как вариант

Alex
07.08.2017
18:18:34
Хм, действительно. Спасибо!)

Taras
08.08.2017
12:02:23
Всем трям. Ребята, вопрос, где в иерархии файлов бандла хранить менеджеры? К примеру, у меня есть какой-то менеджер объекта, внутрях какой-то стандартный крад, эт для того чтобы разгрузить контроллер... Вот никак не могу найти куда бы по бест-прктису его бы впихнуть.

Dinar
08.08.2017
12:05:42
В папку Managers?

Danil
08.08.2017
12:07:29
Manager

Serg
08.08.2017
12:12:57
Всем привет! Подскажите что почитать по структуре приложения, как то тут раньше пролетало. Имеется ввиду разбивать проект на логические разделы. Ну то есть всё связанное с платежами в src/AppBundle/Payment, а например с договорами в src/AppBundle/Contract, к примеру

Danil
08.08.2017
12:13:55
https://gist.github.com/fesor/76d39b19b18f7103a7c058301dc6a8fe

Taras
08.08.2017
12:27:38
В папку Managers?
это слишком как-то просто )

но, да, пущай там будет ) Пасибки

Dinar
08.08.2017
12:41:56
В чем отличие композиции, агрегации и наследования? Не могу понять, как можно то, что в абстрактном классе и вроде как должно там быть, превратить в композицию.

Артур Евгеньевич
08.08.2017
12:56:42
Артур Евгеньевич
08.08.2017
12:56:55
Это оч кратко если)

Dinar
08.08.2017
13:03:11
В сеттеры?

Или не важно?

Dmitriy
08.08.2017
13:05:16
конструктор

Dinar
08.08.2017
13:08:22
Ну то есть так же как в симфони сервисы.

Артур Евгеньевич
08.08.2017
13:11:24
Да эт по факту пример агрегации

Dinar
08.08.2017
13:51:04
А композиция?

Артур Евгеньевич
08.08.2017
14:01:13
Композиция когда обьекты внутри класса создаешь а не получаешь извне

Google
Dinar
08.08.2017
14:05:26
Понятно.

То есть не самая тестируемая штука получается?

Alan
08.08.2017
14:11:54
во времени жизни отличие основное вроде, с композицией целое контролирует время жизни своей части и без целого она не существует

То есть не самая тестируемая штука получается?
почему? это же отдельный объект с состоянием и поведением

Dinar
08.08.2017
14:17:54
А как мокать зависимые классы?

Alan
08.08.2017
14:30:20
отдельно ты эту часть можешь же протестировать и мокать ее зависимости

Артур Евгеньевич
08.08.2017
14:56:19
Admin
ERROR: S client not available

Dinar
08.08.2017
15:07:16
отдельно ты эту часть можешь же протестировать и мокать ее зависимости
Как можно мокать зависимости, если они внутри создаются?

Alan
08.08.2017
15:10:54
Как можно мокать зависимости, если они внутри создаются?
ну я про тестирование части отдельно имел ввиду, если она не существует без целого и не затратная то можно же и не мокать

Alan
08.08.2017
15:12:00
ну допустим эта часть требует em, он и в целое придет через конструктор и мокнется

но было бы интересно узнать что важнее - иметь возможность отщиплять для более быстрых тестов то что логически не существует самостоятельно или все-таки инстанцировать такие части в при тестировании целого

Dinar
08.08.2017
15:17:57
Ну юнит тесты - они все таки маленькие части тестируют.

Но кроме em например он требует сервис который обращается к АПИ. его инстанс создаётся внутри. То есть я его снаружи не вижу. И замокать не могу. То есть мои тесты будут зависеть от АПИ всегда.

Alan
08.08.2017
15:19:56
а почему его инстанс внутри создается? аписервис же имеет другой цикл жизни?

ну то есть он как и em должен через агрегацию наверно

Dinar
08.08.2017
15:31:20
Это разве не то?

Композиция когда обьекты внутри класса создаешь а не получаешь извне

Должен конечно. ;) так когда вообще композиция использоваться может? Какой-то конкретный пример, где это лучше?

Google
Alan
08.08.2017
15:40:03
https://en.wikipedia.org/wiki/Object_composition - Composition is usually implemented such that an object contains another object - In aggregation, the object may only contain a reference or pointer to the object (and not have lifetime responsibility for it).

Igor
08.08.2017
16:30:48
Как можно мокать зависимости, если они внутри создаются?
Отключить оригинальний конструктор и заюзать тестовий?

Dinar
08.08.2017
16:35:24
Может быть.

Sergey
08.08.2017
16:43:32
но если ты выбрал композицию тебе это и не надо. А если надо - надо было брать агрегацию

class Inheritance extends Dependency {} class Composition { public function __construct() { $this->dep = new Dependency(); } } class Dependency { public function __construct(Dependency $dep) { $this->dep = $dep; } }

это если коротко о разнице

добавить тольео интерфейс надо

Dmitry
08.08.2017
16:52:32
Композиция все же это о подчиненности и времени жизни, а не о том - создан объект внутри другого или инжектирован.

Dinar
08.08.2017
19:27:57
это слишком как-то просто )
А надо ли усложнять? :)

Sergei
08.08.2017
20:26:54
В папку Managers?
Но подождите он же ещё и сервис. Значит его надо в папку Service. Но постойте это ещё и class надо все классы в папку Class.? Сорри наболело)

Sergey
08.08.2017
21:49:53
Композиция все же это о подчиненности и времени жизни, а не о том - создан объект внутри другого или инжектирован.
да, и самый простой способ которым достигается факт того что зависимости живут столько же сколько и главный объект - это инстанцировать все это добро внутри

не думаю что нужно как-то рассматривать другие случаи

Dmitry
08.08.2017
21:50:45
Самый простой не спорю. Просто не согласен с тем, что если инжекция - то сразу агрегация

Sergey
08.08.2017
21:52:19
Самый простой не спорю. Просто не согласен с тем, что если инжекция - то сразу агрегация
по сути у тебя цикл жизни зависимостей не контролируется "главным" объектом. Ты можешь как бы извне это провернуть (prototype сервисы например), но это по сути сильно смазывает различие между композицией и агрегацией ибо о способе порождения зависимостей из "главной" штуки мы уже не знаем

Dmitry
08.08.2017
21:53:52
различие - может ли этот объект _логически_ использоваться вне основного или нет

Yuriy
09.08.2017
13:49:23
подскажите пожалуйста как елемент формы EntityType::class вывести масивом input а не обычным select-ом ?

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