
SiZE
11.10.2018
14:35:21
ну то что их в мире много это понятно

Maxim
11.10.2018
14:36:02
У пользователей много часовых зон будет

Aleksey
11.10.2018
14:36:32

Google

Maxim
11.10.2018
14:36:40
Так и храню

Alexandr
11.10.2018
14:36:41
$this->created_om = time(); //unix timestamp is UTC

Aleksey
11.10.2018
14:37:44

Maxim
11.10.2018
14:38:08

Aleksey
11.10.2018
14:40:00
timestamp mysql отдает как datetime строку
храни INT

Maxim
11.10.2018
14:40:50
Мне потом нужны будут запросы по дате...
Не в этой табличке, но нужны будут

Aleksey
11.10.2018
14:41:48
если нужно фильтровать дату в промежутке, то проблем нет если хранить в INT

Maxim
11.10.2018
14:42:35
Типо перед тем как сформировать запрос даты привести в таймштамп?

Aleksey
11.10.2018
14:45:03
да в принципе без разницы. Просто нужно четко понимать что БД хранит время по гринвичу. Когда ты в нее пишешь она будет конвертировать из сессионного пояса в гринвич
Когда ты читаешь она конвертирует в сессионный пояс.
приложение работает в локальном поясе, но база ему отдает в сессионном поясе. Если его не выставить, то будет дефолтный пояс базы.

Google

Maxim
11.10.2018
14:47:33
Я приложению поставил UTC

Aleksey
11.10.2018
14:47:37
'initSQLs' => array(
// set mysql timezone to value, calculated from php
// 'SET SESSION time_zone = \''.(preg_replace('/([+-]\\d{2})(\\d{2})/', '$1:$2', date('O'))).'\'',
'SET SESSION time_zone = "Europe/Kiev"',
),
у меня раньше было так в конфиге

Maxim
11.10.2018
14:48:17
А конфиг этот можно менять в зависимости от юзера?

Aleksey
11.10.2018
14:49:01
Yii::$app->formatter смотри. Этот компонент придуман чтобы отдавать в формате удобном текущему пользователю.

Maxim
11.10.2018
14:51:24
Сейчас попробую инт

Eugene
11.10.2018
15:06:47
Сейчас попробую инт
а что дебаггер говорит от выполняемых запросах? если время в итоге одинаковое, то мне кажется либо срабатывает behavior либо значения в бд отправляются пустыми

Maxim
11.10.2018
15:08:22
бихейвиор отключил, дефаулта нет, так что поля точно не пустые
Сейчас разбираюсь его
еще

Eugene
11.10.2018
15:12:00

Maxim
11.10.2018
15:12:29
Ну я их не делал. Миграция могла замутить тригер?
С интами получилось!
Осталось повесить поверх интов свою логику и будет круто...
Спасибо всем за наводки ?

Aleksey
11.10.2018
15:23:46
С интами получилось!
На самом деле timestamp внутри тоже INT только база при каждом обращении конвертирует в строку

Maxim
11.10.2018
15:25:04

Alexey
11.10.2018
15:49:12
Ребят, можно ли как-то шторм заставить подсвечивать методы, которые навешены на приложение через поведения в конфиге?
[
'as rule' => \apps\main\behaviors\RulesBehavior::class
]
Когда вызываю метод из поведения так:
Yii::$app->myMethod()

Bo
11.10.2018
15:54:13
Всем привет!
Хочу логи в базу кидать, конфиг:
'class' => 'yii\log\DbTarget',
'levels' => [],
'categories' => ['api'],
'logVars' => [],
пытаюсь добавить миграцию:
php yii migrate --migrationPath=@yii/log/migrations/
Ругается:
Exception 'yii\base\InvalidConfigException' with message 'You should configure "log" component to use one or more database targets before executing this migration
Подскажите, как починить?

Dmitriy
11.10.2018
15:58:39
вангую что конфиг и веб и консоль разный + гдето не доступна бд

Bo
11.10.2018
16:00:31
да, не сообразил, что в console надо конфиг править

Google

Andrey
11.10.2018
16:02:24

Alexey
11.10.2018
16:02:49

Yet Another Stats
11.10.2018
16:03:01
Карма @andku83 стала 4

Ad.x ??
11.10.2018
16:11:19
где компоненты реквайром подключать

Shokha
11.10.2018
16:43:29
composer create-project —prefer-dist yiisoft/yii2-app-basic basic
почему не качает папку вендора
как скачат его?

Piskovyi
11.10.2018
16:49:54
composer update
Пробовал?

Shokha
11.10.2018
16:50:40
да дал ошибку

Piskovyi
11.10.2018
16:50:48
Какую?

Shokha
11.10.2018
16:50:54
Composer could not find a composer.json file in /var/www/yii.loc/html
To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
ща ща 1 минут

Alexandr
11.10.2018
16:53:51
composer install

Shokha
11.10.2018
16:55:25
Loading composer repositories with package information
Updating dependencies (including require-dev)

Alexandr
11.10.2018
16:56:55
перейди в папку проекта, где есть composer.json и там делай

Shokha
11.10.2018
16:57:31
я итак там делаю

Google

Alexandr
11.10.2018
16:58:53
так он начал что-то делать
Loading composer repositories with package information
Updating dependencies (including require-dev)
жди

Shokha
11.10.2018
16:59:07
ок

Alexandr
11.10.2018
17:02:34
расширения mbstring надо поставть для php
apt-get install php7.2-mbstring
как-то так
посмотри минимальные требования для yii
php потом незабудь рестартануть

Admin
ERROR: S client not available

Shokha
11.10.2018
17:06:55

Alexandr
11.10.2018
17:09:02
composer install —no-dev

Shokha
11.10.2018
17:10:39
Invalid argument —no-dev. Use "composer require —no-dev" instead to add packages to your composer.json.

Alexandr
11.10.2018
17:12:35
composer install —help
— - это два прочерка

Shokha
11.10.2018
17:14:43
тоже самое
— - это два прочерка
но внизу
Running update with —no-dev does not mean require-dev is ignored, it just means the packages will not be installed. If dev requirements are blocking the update you have to resolve those problems.

Dmitriy
11.10.2018
17:16:28

Google

Ad.x ??
11.10.2018
17:16:52

Dmitriy
11.10.2018
17:18:58
Мне кажется он против всего. Что не предлагай он отпишется и скажет что-то против

☕ CunningFox
11.10.2018
17:30:59
Так же как и компоненты

Ad.x ??
11.10.2018
17:32:35

StAlKeRxXl
11.10.2018
18:21:12
Парни, подскажите.. в массиве значение одного ключа или true, или false
в модели поле прописано как integer
в бд - как TinyInt
Почему вставляет 1 когда в массиве true
а когда в массиве false - не вставляет (не проходит валидацию в модели, как понял.. потому что при save(false) - вставляет

Kurakste
11.10.2018
18:21:33
Всем привет. Подсткажите в YII в юниттестах запускаю такой тест:
Он выполняется горорит что все Ок. В базе данных запиь не появляется. Так и должно быть? Как сделать, что бы запись сохранялась в базе?

☕ CunningFox
11.10.2018
18:35:09
Валидацию покажи

Bohdan
11.10.2018
18:36:02
в что?

StAlKeRxXl
11.10.2018
18:36:15
Что не вставляет?
если в массиве "margin":false - то в базу не вставляет
если "margin":true - то вставляет в БД значение 1
[['price_precision', 'margin', 'favorites', 'blacklisted'], 'integer'],
в БД поле как TinyInt
ошибка, как я понял на значении false в массиве
если true - то нормально работает
и каким методом ошибки можно смотреть?
сделал вот так:
$model->save();
$model->getErrors();
die();
не показывает =)

Alexandr
11.10.2018
18:46:42
print_r($model->getErrors()); сделай вместо $model->getErrors();
$model->getErrors(); возвращает массив с ошибками - надо же их напечатать))

StAlKeRxXl
11.10.2018
18:49:30
по ходу надо какие-то сценарии юзать.. или тип в валидации Модели изменить с integer на ... фиг_знает_что

Alexandr
11.10.2018
18:50:40
для boolean тоже есть валидация
https://www.yiiframework.com/doc/guide/2.0/ru/tutorial-core-validators#boolean