• Почему возникает ошибка Syntax error or access violation: 1055 Expression #2?

    AlekseyNikulin
    @AlekseyNikulin
    недочеловек
    yii2-prog11. Ручка строгости вашего MySQL сервера выкручена на максимум, поэтому в группировку должны входить все поля. Либо оборачивайте их в any_value() . Но это уже не есть хорошо.
    Ответ написан
    Комментировать
  • Почему возникает ошибка Syntax error or access violation: 1055 Expression #2?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Переписать запрос по стандарту SQL. При использовании GROUP BY все поля, выбираемые в SELECT должны быть либо полями, по которым идёт группировка, либо результатами агрегатных функций.
    У вас поле date не входит ни в GROUP BY, ни в агрегатную функцию. Дата из какой именно агрегируемой строки должна попасть в ответ?
    Ответ написан
    Комментировать
  • Что нужно прописать чтоб был правильный URL для frontend и backend в yii2?

    slo_nik
    @slo_nik Куратор тега Yii
    Добрый день.
    Можно сделать так:
    В common/config/main.php
    $baseUrlFrontend = str_replace('backend/web', '', (new Request)->getBaseUrl());
    
    return [
        'components' => [
            'cache'              => [
                'class' => 'yii\caching\FileCache',
            ],
            'urlManagerFrontend' => [
                'class'           => 'yii\web\UrlManager',
                'baseUrl'         => $baseUrlFrontend,
                'enablePrettyUrl' => true,
                'showScriptName'  => false,
            ]
        ]
    ]

    Изображения хранятся в frontend/web/images. В backend получаете их так:
    $img =  (Yii::$app->urlManagerFrontend->createUrl( $model->images[0]['path'] . DIRECTORY_SEPARATOR . $model->images[0]['title']));
    echo Html::img($img);

    В frontend получаете обычным способом.
    echo Html::img('@web/' . $model->images[0]['path'] . DIRECTORY_SEPARATOR . $model->images[0]['title']);


    p.s. У меня на одну запись может быть несколько изображений, поэтому использую связь "images" и вывожу первое изображение из массива с индексом "0".

    p.s.s. urlManagerFrontend расположил в common потому, что не только в backend использую его. Вы попробуйте расположить в backend/config/main.php
    Ответ написан
    Комментировать