Ответы пользователя по тегу Symfony
  • Как правильно составить связи для сущностей?

    atlantech
    @atlantech
    Full Stack Software Developer
    Новую сущность обычно вводят в том случае, если она потенциально содержит в себе первичный ключ. В вашем случае напрашивается сущность Language поскольку имя языка будет уникально (скорее всего в таблице languages у вас не будет две записи с именем ru или eng). Создав таблицу lanugages вы избавитесь от дублирования таблиц banner_languages и video_languages и сможете связывать её с любыми другими сущностями.

    То же самое с тегами - нет смысла плодить одинаковые сущности. Сделайте одну сущность Tag и добавляйте связи с другими.
    Ответ написан
    Комментировать
  • Сервисы инициализируются в момент вызова сервиса или в момент запроса к сайту?

    atlantech
    @atlantech
    Full Stack Software Developer
    Жизненным циклом сервиса управляет параметр scope. Он может принимать 2 значения: container (по умолявнию) и prototype. Container означает что запрос сервиса из контейнера всегда будет возвращать один и тот же экземпляр. Prototype означает что сервис будет создаваться каждый раз заново. Поэтому большинство сервисов, которые вы создаете, существуют в одном экземпляре от начала работы скрипта до его конца.
    Ответ написан
    Комментировать
  • Разработка через тестирование в Symfony?

    atlantech
    @atlantech
    Full Stack Software Developer
    Контроллеры удобно покрывать тестами если заменить
    public function indexAction() {
        //...
        return $this->render(
           'key' => $val
        );
    }

    на
    /**
    *@Template()
    */
    public function indexAction() {
        //...
        return [
           'key' => $val
        ];
    }

    Т.е отрисовку шаблона перенести на событие kernel.view. Хотя разработчики рекомендуют не использовать аннотацию в угоду производительности
    Ответ написан