@yii2ru

Страница 494 из 1721
Ivan
14.08.2017
23:22:25
Я на bower-asset

Главное что asset-pakagist

Alex
14.08.2017
23:22:41
ну это 100%

просто бовер то умер)

Google
Alex
14.08.2017
23:22:57
типа настоятельно рекомендуют слезть на нпм

Ivan
14.08.2017
23:23:06
Чо, рили умер?

Alex
14.08.2017
23:23:11
угу

сек

https://bower.io/

читай синюю полоску под лого

https://github.com/bower/bower/issues/2298

вот обсуждение

Dmitriy
14.08.2017
23:24:25
Чо, рили умер?
от тупо дублирует npm .

Alex
14.08.2017
23:24:46
Ну разница вроде в том как деревья зависимостей строятся

бовер вроде с зависимостями не оч

Ivan
14.08.2017
23:25:42
от тупо дублирует npm .
Прикольно, не знал

Alexey
15.08.2017
04:18:21
Ребята, подскажите что я сделал не так в конфиге адвансед шаблона добавил метку времени последней активности пользователя 'on beforeAction' => function () { if (!Yii::$app->user->isGuest) { \common\models\User::updateAll(['last_activity' => time()], ['id' => Yii::$app->user->id]); } }, время фиксируется на час больше текущего на сервере время установлено правильно, если во вьюхе вставить <?= date('H:i:s') ?> то время показывает правильное, но в конфиге почему-то на час больше

Google
Alexey
15.08.2017
04:21:05
конфиг фронта, если это имеет значение :) frontend/config/main.php

M
15.08.2017
04:21:29
Я ещё не работал с тайп хинтов скаляров, но по обсуждениям знаю :D

Alexey
15.08.2017
04:30:45
похоже, что в форматере не верная таймзона если выводить через форматер, то дата не верная Yii::$app->formatter->asDatetime($model->last_activity) если без него, то верно date('H:i:s', $model->last_activity) Тогда вопрос как указать таймзону для форматера? в общем конфиге (common) вписал таймзону, но ничего не изменилось 'formatter' => [ 'timeZone' => 'Asia/Omsk', 'dateFormat' => 'dd.MM.yyyy', 'decimalSeparator' => ',', 'thousandSeparator' => ' ', ]

нужно указывать таймзону отдельно для фрона и бэка?

Дмитрий
15.08.2017
06:13:13
Если простая - ее легко загуглить

Манов миллион

Maxim
15.08.2017
06:43:01
Привет! Как сделать правильно ->andWhere('in', 'value', $subQuery) Пишу вместоу $subQuery (new Query())->select((new Query()) ->select('child_id') ->from('{{%user_parent}}') ->andWhere(['parent_id' => \Yii::$app->user->id]) ->union( (new Query())->select('parent_id')->from('{{%user_parent}}')->andWhere(['parent_id' => \Yii::$app->user->id]) ) и пока не сделаю ->column() - ошибка to be string, object given А можно ли в этом случае сделать подзапрос, без получения промежуточного результата в виде ключей результата

Vladislav
15.08.2017
06:46:17
https://stackoverflow.com/questions/30164491/yii2-subquery-in-active-record

http://lmgtfy.com/?q=yii2%20in%20sub%20select

тогда вопрос уже другой

попробуй asArray() ипсользоать

получешь ответ в виде массива

его замапь, как тебе надо

Maxim
15.08.2017
06:49:07
@Look_Forward у меня column() возвращает массив. Но при нем у меня 4 заспроса в бд делается. А я хочу один

Google
Vladislav
15.08.2017
06:50:01
пиши raw запросы

Maxim
15.08.2017
06:50:18
это нормально?

Vladislav
15.08.2017
06:50:35
да

Maxim
15.08.2017
06:50:40
Я думал рекомендуется использовать ActiveQuery или Query

Vladislav
15.08.2017
06:50:43
не восем mysqli_query()

а через DbCommand

или как он там

это норма

ActiveQuery/Query шоб чише стандратные были

Maxim
15.08.2017
06:51:11
ok. Спасибо

Vladislav
15.08.2017
06:51:19
а если что-то специфическое, то юзай более подходящие интсрумены

в любом случае, Query внури использует тот же DbCommand

Maxim
15.08.2017
06:52:23
ну это я видел. ok, спасибо

Alexey
15.08.2017
07:04:33
как запретить редактировать атрибут модели по условию? Если атрибут А === true тогда запретить редактировать атрибут В?

Vladislav
15.08.2017
07:05:07
пиши свой валидатор

или beforeSave переопердели

Alexey
15.08.2017
07:06:36
вот я и хочу написать что-то типа такого // ['phone', 'skip', 'when' => function ($model) { // return $model->status === self::STATUS_VERIFIED; // }]

SiZE
15.08.2017
07:06:58
а что мешает? :)

Alexey
15.08.2017
07:08:01
я не понимаю что должен вернуть мой валидатор, если добавить ошибку в модель, тогда вся модель не сохраняется

было так изначально ['phone', function ($attribute) { if ($this->status === self::STATUS_VERIFIED) { $this->addError($attribute, 'Нельзя редактировать подтвержденный телефон.'); } }]

Google
Alexey
15.08.2017
07:08:39
конечно же так модель вообще не сохраняется

SiZE
15.08.2017
07:08:57
так скип же исключит правило и не кинет ошибку

ну только без 'skip'

just when

http://www.yiiframework.com/doc-2.0/yii-validators-validator.html#$when-detail

Alexey
15.08.2017
07:17:13
так? ['phone', 'when' => function ($model) { return $model->status !== self::STATUS_VERIFIED; }]

так ошибка, нужно указать валидатор

SiZE
15.08.2017
07:17:37
очевидно же что нет :)

Alexey
15.08.2017
07:17:51
а какой валидатор использовать чтобы просто скипнулось?

SiZE
15.08.2017
07:18:15
просто удалить phone из rules

Alexey
15.08.2017
07:19:53
а если его удалить, оно всегда будет unsafe и тогда его никогда нельзя будет редактировать, так?

SiZE
15.08.2017
07:20:26
у тебя он сейчас как редактируется то?

Alexey
15.08.2017
07:21:55
телефон можно редактировать до тех пор пока он не подтвержден админом и у этого атрибута в правилах есть 2 валидации - проверка на длину и на то, что оно должно содержать только цифры

я хочу добавить 3 правило, которое запретит редактирование если админ подтверил телефон

что-то заклинило меня на какой-то элементарщине ))

наверное придется в beforeSafe писать условие

или надо тем двум правилам, которые уже есть добавить условие 'when' => function ($model) { return $model->status !== self::STATUS_VERIFIED; }

SiZE
15.08.2017
07:31:33
надо тем двум правилам, которые уже есть добавить условие

Alexey
15.08.2017
07:48:32
@sizepermru спасибо :)

Boris
15.08.2017
08:34:12
Ребят, чот не вижу в доке.

Google
Boris
15.08.2017
08:34:23
Как в behaviors анонимку пхнуть?

Maxim
15.08.2017
08:48:39
Делаю запрос $userData = User::find()->one() и $userData = User::find()->with('posts', 'profile', 'settings')->one(); $this->view->params['user'] = $userData; $this->view->params['post'] = $userData->posts; $this->view->params['profile'] = $userData->profile; $this->view->params['settings'] = $userData->settings; Дебаг показывает, что колличество запросов в BD меньше на 1 с первым вариантом Как это может быть?

То же если указываю joinWith() - никакого уменьшения колличества запросов

Konstantin
15.08.2017
08:49:33
ты сами запросы смотри

Maxim
15.08.2017
08:49:44
28шт

Konstantin
15.08.2017
08:49:54
может у тебя еще считаются запросы, которые читают метаданные

или еще какая-то байда

ну и что, что 28 штук? :)

но вообще если у тебя ОДИН пользователь...

то with тебе вообще никак не поможет

Maxim
15.08.2017
08:51:35
стандартная байда считается, но их должно быть около 10 Не понимаю почему нет разницы в колличестве запросов после присваивания связанных обектов?

Konstantin
15.08.2017
08:52:03
а ты посмотри на сами запросы

вот если безо всяких with

у тебя есть там запрос SELECT * FROM posts WHERE user_id = X?

Maxim
15.08.2017
08:52:42
А что вот это такое? SHOW FULL COLUMNS FROM profile

Konstantin
15.08.2017
08:52:55
может у тебя еще считаются запросы, которые читают метаданные

я ж говорю

Страница 494 из 1721