Задать вопрос
Пользователь пока ничего не рассказал о себе

Наибольший вклад в теги

Все теги (10)

Лучшие ответы пользователя

Все ответы (21)
  • Как увеличить время сессии в yii?

    @yiiworld
    Для Yii2 нужно добавить в конфигурацию(/config/web.php для базового приложения) значение timeout с указанным количеством секунд.
    Например на 10 лет:
    $config = [
    ...
    	'components' => [
            ...
    		'session'=>[
    	    		'timeout'=>10*365*24*60*60,
    		],
    	...
    	],
    ...
    ];
    Ответ написан
    Комментировать
  • Как сделать сортировку связанных таблиц в Yii2?

    @yiiworld
    1) вы сортируете строки, а не числа, поэтому вам кажется что сортировка не работает. Используйте для хранения цен числовые форматы данных в MySQL, например DECIMAL. Но лучше всего использовать Integer(или BigInt) и хранить в них копейки или тысячные доли копеек в зависимости от требуемой точности
    2) пагинация тоже работает правильно, просто вы передаете в нее не то что подразумеваете - в totalCount вы передаете объект который подвержен мутациям. Нужно клонировать первоначальный объект от которого зависит пагинация и исполдьзовать его для count
    Controller action:
    public function actionIndex()
    {
        $query = Article::find()->where(['status' => 1]);
        $countQuery = clone $query;
        $pages = new Pagination(['totalCount' => $countQuery->count()]);
        $models = $query->offset($pages->offset)
            ->limit($pages->limit)
            ->all();
    
        return $this->render('index', [
             'models' => $models,
             'pages' => $pages,
        ]);
    }

    View:
    foreach ($models as $model) {
        // display $model here
    }
    
    // display pagination
    echo LinkPager::widget([
        'pagination' => $pages,
    ]);
    Ответ написан
    9 комментариев
  • Как проверить csrf токен вручную?

    @yiiworld
    actionMethoddd(){
    // получаем переданный токен из заголовков, тела запроса, json или где вы там его передаете
    // достаем из места хранение "ранее сохраненный" токен для данной сессии(условно - пользователь, аккаунт, id приложения)
    // сравниваем друг с дружкой
    // ПРОФИТ
    }


    Только что-то мне подсказывает, что csrf токен вам и не нужен. А нужен токен(строка) который будет являться секретным ключом для идентификации сессии пользователя(уникальный для каждого пользователя)
    Ответ написан
    1 комментарий
  • При настройке чпу у yii advanced отваливаются стили, в чем проблема?

    @yiiworld
    Если вы под стилями имеете ввиду CSS, то привели бы конкретный пример "отваливания" стиля.
    Копайте в сторону где вы используете относительные пути для подключения css, а также где вы используете относительные пути в самом CSS
    Ответ написан
    Комментировать
  • Yii2 не работает сценарий выводит все поля, в чем подвох?

    @yiiworld
    Сценарии используются для проверки и преобразования данных.
    Для вашего случая нужно просто выбрать 2 поля:
    $resultArray = SettingsUser::find()->select(['show_name', 'show_nickname'])
        ->where(['id_user' => Yii::$app->request->post('author')])->asArray()->one();
    Ответ написан
    2 комментария