Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
SamDark

Александр Макаров

Yii2 core team
  • 139
    вклад
  • 1
    вопрос
  • 137
    ответов
  • 41%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как вывести из связи activerecord только последние 10 записей?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    $sql = 'Select ........';
    $model = YourModel::findBySql($sql)->all();


    Через relation нормально не выйдет.
    Ответ написан более года назад
    2 комментария
    2 комментария
  • Почему дублируются записи в базе (ActiveRecord, Yii2)?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Именно в этом коде проблемы нет.
    Ответ написан более года назад
    1 комментарий
    1 комментарий
  • Взаимодействие нескольких репозиториев. Как объединить?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Получается, что ProductRepository зависит от других репозиториев (Category, ProductType, Image, File....).


    Это уж как сделаете. Может зависеть, а может и нет. Я бы не завязывал одно на другое. Пусть там будет похожий код... ничего страшного.

    Теперь главный вопрос - как собирать товар (или другую сущность) из разных кусков?


    Руками.

    Как обрабатывать метод $productRepository->save($product), если разные куски товара сохраняются по-разному.


    Индивидуально. Руками.

    Как быть с масштабированием, если в будущем появится еще что-то?


    Или взять ORM или, опять же, руками. Не бойтесь писать код и не бойтесь его дублирования в разумных пределах. Не всё то DRY что им кажется.
    Ответ написан более трёх лет назад
    7 комментариев
    7 комментариев
  • Как сделать расширенный поиск yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Ну, JOIN сделать... joinWith.
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Yii2 как настроить виджет?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    https://github.com/samdark/yii2-cookbook/blob/mast...
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • В сделать кнопку переключения языков в yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    https://github.com/samdark/yii2-cookbook/blob/mast...
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Где правильно регистрировать зависимости (DI) в Yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    В любом файле конфига. Конфигурирование контейнера — не инициирование зависимостей.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • 301 редирект для 11 тыс страниц как сделать. Фреймворк yii?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Если URL формируется из базы, написать свой URLRule.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Обязателен ли индекс для внешнего ключа InnoDB MySQL?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Вопрос 1: зачем встроили создание индекса?


    Потому что индекс можно создавать и не по внешнему ключу.

    Вопрос 2: разве при удалении таблицы индекс и ключ не удаляются вместе с ней? Или в разных СУБД бывает по-разному?

    Потому что индексы иногда необходимо удалять отдельно.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Комментарии в yii2 остаются комментариями как везде? Или несут функционал?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Именно эти комментарии для IDE. Чтобы дополнение работало лучше.

    Аннотаций в Yii практически нет. Комментарии читает консольный контроллер help для демонстрации описания команд и, насколько помню, это всё.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как кастомизировать функцию validatePassword() из \vendor\yiisoft\yii2\base\Security.php?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Сделайте отдельный класс. Не стоит трогать Security. Тот, кто будет заниматься проектом после вас, скажет вам спасибо.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как хранит сессии yii2, если DbSession не подключён?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Так, как задано в php.ini. По умолчанию в файлах.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Информативная книга по Yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    На тему пробелов частично поможет https://github.com/samdark/yii2-cookbook
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Что такое Model в МVС?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    M в MVC — это доменная-модель. То есть набор классов, отвечающий за логику приложения.
    Ответ написан более трёх лет назад
    9 комментариев
    9 комментариев
  • Для чего нужны модули?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    rmcreative.ru/blog/post/moduli-yii
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как правильно писать тесты для приложения на Yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    В Yii даже банальное ... порождает запрос к базе данных, для получения структуры таблицы news.


    Смокать вполне реально. Не знаю, как через Mockery, но через PHPUnit у меня вполне получалось.

    В шаблонах yii2-advanced и yii2-basic есть unit, functional, acceptance. Стоит выделить отдельную группу тестов - integration?

    Это название означает, что тесты не строго модульные. Реализованы они могут быть тем же PHPUnit.

    integration==functional

    Нет. integration = тестирует реальную базу, но всё ещё в терминах кода. functional = тестирует в терминах конечного пользователя: страницы, URL-ы, парсинг тела ответа. При этом реальный браузер не запускается. acceptance = то же, но с реальным браузером.
    Ответ написан более трёх лет назад
    7 комментариев
    7 комментариев
  • Как настроить Xdebug для Yii2?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Настройка XDebug под Yii ничем не отличается от настройки XDebug под PHP. Ни единой особенности.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Нужно ли создавать модели?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Мы у себя создаём... валидировать так и так надо, в модели оно или нет.
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как написать функции работающие с названиям переменных как названиями свойств объекта?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    $class->{$propertyName}
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как обойти зависимость от yii\web\Request при unit test?

    SamDark
    Александр Макаров @SamDark
    Yii2 core team
    Можно попробовать запустить юнит через phpunit, а не через CodeCeption.
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • Следующие →
Самые активные сегодня
  • Drno
    • 22 ответа
    • 0 вопросов
  • CityCat4
    CityCat4
    • 9 ответов
    • 0 вопросов
  • vovka3003
    Владимир Шаблий
    • 7 ответов
    • 0 вопросов
  • GNUBack
    • 7 ответов
    • 0 вопросов
  • mayton2019
    • 5 ответов
    • 0 вопросов
  • Bright144
    • 5 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации