Найдено 905 результатов

yiiliveext
2020.02.13, 15:47
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

-- Имя таблицы вообще в вашем варианте всегда добавляется, надо оно там или нет. В моем варианте - добавляйте имя таблицы когда надо. Добавлять вот так. а добавлять всегда - это ваш варинат. А когда не надо то и не добавляйте. Вы шутите? В моем варианте class CommentQuery extends ActiveQuery { priv...
yiiliveext
2020.02.13, 15:03
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

У вас запрос не у меня, а у вас. У меня Comment::find()->active()->all() выдаст SELECT * FROM `comment` WHERE `status` = 1 Это вы вставили в active() то что приведет к SELECT * FROM `comment` WHERE `comment`.`status` = 1 а не я :) не надо свой код приписывать мне :) У вас будет абсолютно то же. Имя...
yiiliveext
2020.02.13, 14:46
Форум: Общие вопросы (Yii 2.x)
Тема: Реализация файловой системы
Ответы: 4
Просмотры: 685

Re: Реализация файловой системы

Превью можно делать без загрузки файла на сервер https://stackoverflow.com/questions/4459379/preview-an-image-before-it-is-uploaded Файлы можно хранить так $newFileName = md5($username . $filename . $time); // fba8255e8e9ce645522455f3e1561e53.jpg Сохраняем в папку imgsRootFolder/fb/a8/fba8255e8e9ce6...
yiiliveext
2020.02.13, 14:31
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

ок, переформулирую его конечный код на SQL сформированный билдером должен выглядеть так, как если бы он был написан вручную. Или отлчиаться в нюансах. Из этого и следует - что если в ручном коде не требуется переименование таблиц, то почему оно есть после работы билдера? У вас запрос Comment::find(...
yiiliveext
2020.02.13, 13:56
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

Какой принцип нарушает этот код. Никакой. там в нем все равно $alias = $tableName; если не было использование alias Я же о ненужности его использования, когда это - не нужно. Но ок, третий вариант к моим двум Вместо *::tableName() использовать getTableNameAndAlias() Так он же, как и ваши два предыд...
yiiliveext
2020.02.13, 13:10
Форум: Общие вопросы (Yii 2.x)
Тема: Определить online или offline
Ответы: 8
Просмотры: 472

Re: Определить online или offline

Логируйте запросы пользователя в базу в on beforeAction приложения, по ним смотрите. "on beforeAction" внутри самого приложения должно быть на высшем уровне, я правильно понял? На уровне модулей и компонентов. Если я правильно прочитал, то вначале срабатывает beforeAction приложения, потом модулей,...
yiiliveext
2020.02.13, 13:08
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

А если потом понадобится джойнить эту таблицу саму с собой? YAGNI («You aren't gonna need it»; с англ. — «Вам это не понадобится») — процесс и принцип проектирования ПО, при котором в качестве основной цели и/или ценности декларируется отказ от избыточной функциональности, — то есть отказ добавлени...
yiiliveext
2020.02.13, 12:47
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

skynin писал(а):
2020.02.13, 12:39
Задача
вывести пользователей у которых есть хотя бы один АКТИВНЫЙ комментарий.
.....

избавляет от лишнего кода, который якобы расширяет функционал Yii
А если потом понадобится джойнить эту таблицу саму с собой?
Можно кстати, и через getTableNameAndAlias сделать.
yiiliveext
2020.02.13, 12:33
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

Алиас для запросов нужен соединения таблицы с собой, или для многократного соединения с одной и той же таблицей А такая потребность возникает очень редко. Именно эту проблему он и решает. Кроме того, он более универсальный и покрывает и ваш кейс. Потому что мы можем тупо сделать -withAlias(Comment:...
yiiliveext
2020.02.13, 12:22
Форум: Общие вопросы (Yii 2.x)
Тема: Определить online или offline
Ответы: 8
Просмотры: 472

Re: Определить online или offline

Логируйте запросы пользователя в базу в on beforeAction приложения, по ним смотрите.
yiiliveext
2020.02.13, 11:37
Форум: Общие вопросы (Yii 2.x)
Тема: переопределить rawBody перед парсингом JSON
Ответы: 8
Просмотры: 536

Re: переопределить rawBody перед парсингом JSON

Не, это в клиенте, оборачивайте в json public function decryptRequest(ApiTester $I) { $sslHandler = new SslSecurityHandler(); $data = json_encode(['key' => 'value']); $headers = [ 'Content-Type' => 'application/json', 'Authorization' => 'Bearer manager_token' ]; codecept_debug($headers); $client = n...
yiiliveext
2020.02.13, 11:06
Форум: Общие вопросы (Yii 2.x)
Тема: переопределить rawBody перед парсингом JSON
Ответы: 8
Просмотры: 536

Re: переопределить rawBody перед парсингом JSON

Ну так вы его декодируете правильно? Дамп сделайте в on beforeRequest.
Хотя не, вам там нужно зашифрованные данные в json оборачивать, так не пропустит.
А может и пропустит, надо глянуть риквест, не помню точно как там.
yiiliveext
2020.02.13, 10:55
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

А правильные способы - выше *::tableName() Посмотрел сегодня ActiveQuery, в yii билдер вообще так не умеет с алиасами, так что только вариант с именем таблицы. Хотя это тоже не очень хороший вариант, вы больше не сможете установить алиас в таких связях. Оптимально делать так class UserQuery extends...
yiiliveext
2020.02.13, 10:26
Форум: Общие вопросы (Yii 2.x)
Тема: переопределить rawBody перед парсингом JSON
Ответы: 8
Просмотры: 536

Re: переопределить rawBody перед парсингом JSON

спасибо, но данный метод не вызывается почему-то Промахнулся немного, прямо на приложение вешайте обработчик события. 'components' => [ //... 'request' => [ //... ] ], 'on beforeRequest' => function ($event) { $request = $event->sender->getRequest(); $encodedBody = $request->getRawBody(); $decodedB...
yiiliveext
2020.02.13, 00:26
Форум: Общие вопросы (Yii 2.x)
Тема: Basic Auth
Ответы: 11
Просмотры: 627

Re: Basic Auth

Создаете отдельный шаблон для логина/сброса пароля. В нужных действиях указываете нужный шаблон

Код: Выделить всё

public function actionLogin()
{
    $this->layout = 'main-login';
}
yiiliveext
2020.02.13, 00:09
Форум: Общие вопросы (Yii 2.x)
Тема: переопределить rawBody перед парсингом JSON
Ответы: 8
Просмотры: 536

Re: переопределить rawBody перед парсингом JSON

Смотря как передаете, но смысл примерно такой 'components' => [ //... 'request' => [ //... 'on beforeRequest' => function ($event) { $request = $event->sender->getRequest(); $encodedBody = $request->getRawBody(); $decodedBody = do_my_decoding($encodedBody); $request->setRawBody($decodedBody); } ] ]
yiiliveext
2020.02.12, 21:11
Форум: Общие вопросы по программированию
Тема: [MySQL] Хранение большого числа записей
Ответы: 6
Просмотры: 1287

Re: [MySQL] Хранение большого числа записей

pioneer писал(а):
2020.02.12, 13:57
Ответ: хранить ID в UNSIGNED BIGINT. Всем спасибо за помощь и ответы :-D
UUID тоже подойдет.
yiiliveext
2020.02.12, 20:56
Форум: Общие вопросы (Yii 2.x)
Тема: Использование SCROPE внутри joinWith
Ответы: 19
Просмотры: 801

Re: Использование SCROPE внутри joinWith

Вообще-то не должно такой запрос формировать вроде, надо глянуть. Но можете так решить.

Код: Выделить всё

$query = User::find()->innerJoinWith( [
	'comments' => function( CommentQuery $q ) {
		$q->alias('c')->active();
	}
], false )->alias('u')->active();
echo $query->createCommand()->getRawSql();
yiiliveext
2020.02.12, 20:50
Форум: Общие вопросы (Yii 2.x)
Тема: Как правильно сделать inject Response в конструктор контроллера?
Ответы: 3
Просмотры: 345

Re: Как правильно сделать inject Response в конструктор контроллера?

Vasiliy Baukin писал(а):
2020.02.11, 12:31
А Вы думаете, примут коммит?
Да, мы обсуждали это в соседнем разделе.
yiiliveext
2020.02.10, 22:24
Форум: Общие вопросы (Yii 2.x)
Тема: Как правильно сделать inject Response в конструктор контроллера?
Ответы: 3
Просмотры: 345

Re: Как правильно сделать inject Response в конструктор контроллера?

Пока нет такой возможности, у меня есть локально фикс для yii2, но я еще не делал PR.
Если вам горит, то могу сделать, будет возможность инжектить компоненты в конструкторе и экшинах.