
Алексей
11.09.2017
12:09:07
100% можно

Андрей
11.09.2017
12:25:51
Всем привет , кто то пользовался yii2mod\comments ?
Не могу понять почему нк работает событие on afterDelete

first
11.09.2017
12:27:09
Ребзя,всем привет.Наиглупейший вопрос,но как добавить запись через миграцию в БД?)

Stas
11.09.2017
12:28:25
public function safeUp()
{
$this->insert('sea_publish_service', ['url' => '', 'actionType' => 'articlePublishDefault', 'name' => 'Другой ресурс']);
}

Google

Ринат
11.09.2017
12:28:46
http://stuff.cebe.cc/yii2docs-ru/guide-db-migrations.html

Stas
11.09.2017
12:28:53
можно еще как гооврится некошерно вообще прямой sql запрос пульнуть

first
11.09.2017
12:30:03
благодарю,чет пропустил в документации...

Maxim
11.09.2017
12:48:26
Привет! Я установил yii2-queue, запустил прослушивание очереди и шлю необходимый запрос.
Однако мой JobClass принимает в качестве параметра класс Service, который через \yii\queue\serializers\JsonSerializer::class интерпретируется в массив и не хочет внутри срабатывать.
Есть ли возможность передавать классы через очередь сообщений или мне нужно скоппастить свой код, или подтянуть логику в JobClass через статику? Посоветуете что?

SiZE
11.09.2017
12:50:18

Maxim
11.09.2017
12:51:39
@sizepermru спасибо! Ты это использовал?

SiZE
11.09.2017
12:52:28

Maxim
11.09.2017
12:52:53
Я думаю, это то что мне надо! Благодарю еще раз

Stas
11.09.2017
13:23:35
@samdark промокодика на конф у с вашим участием незавалялось?

Ruslan
11.09.2017
13:25:40
а что за конфа?)

Stas
11.09.2017
13:29:44
в харькове
небольшая
https://eatdog.com.ua/?utm_source=facebook&utm_medium=cpc&utm_campaign=fbphp

Google

Dmitry
11.09.2017
13:30:08
я б тоже не отказался :)
@samdark если будет еще один лишний промокод - не откажусь :) Если можно

Maxim
11.09.2017
13:31:26
О! А видео будет?

Dmitry
11.09.2017
13:31:40
планировал ехать

Maxim
11.09.2017
13:31:40
не люблю далеко кататься

Dmitry
11.09.2017
13:31:48
Они все видосы выкладывают у себя на канале
https://www.youtube.com/channel/UCErY35YqTw7SRp2YPIlrQ_A

Maxim
11.09.2017
13:32:21
Благодарю!

Stas
11.09.2017
13:35:37

Dmitry
11.09.2017
13:44:08
@ASYOU99 Днепр. А ты?

Stas
11.09.2017
13:44:55
местный
тобишь обитаю в месте проведения конфы:)

Boris
11.09.2017
13:51:58
Ребят, а что с строгой типизацией?
Если объявлю в web/index.php по всему проекту же пойдет поидее?

Dmitriy
11.09.2017
13:52:40
нет.

Boris
11.09.2017
13:53:15
В каждом файле объявлять если необходимо?

Dmitriy
11.09.2017
13:53:52
да

Boris
11.09.2017
13:54:26
Спасибо.
Что-то не сильно пойму.
если в функцию передается integer, а тип аргумента объявлен string, в итоге функция получит преобразованное string значение
т.е.
function someName (string $var) {
return $var;
}
someName(33);
получу
"33"

Dmitry
11.09.2017
13:59:26

Google

Stas
11.09.2017
14:00:02
а что:?

Dmitry
11.09.2017
14:00:29

Boris
11.09.2017
14:02:20
т.е.
declare(strict_types=1);
function someName (string $var)
{
return $var;
}
var_dump(someName(33));
без declare функция преобразовывает мой int в string
хотя я указал что $var должен быть строкой
и еще нельзя включить глобально строгую типизацию и нужно лепить declare() в каждый файл?

Ad.x ??
11.09.2017
14:53:21
https://wiki.php.net/rfc/scalar_type_hints_v5

Maxim
11.09.2017
14:56:30
@AlDexor объект вообще не закидывается в очередь без гидратора. Однако вложенный объект, принимаемый в корструкторе, даже с гидратором не принимается. Я сделал service, в который поместил все нужные методы для очереди и передал его гидратором в очередь. Но думаю это костыль

Ad.x ??
11.09.2017
14:57:55

Ad.x ??
11.09.2017
14:58:00
их там несколько вроде

Maxim
11.09.2017
14:59:32
Там есть еще PhpSerializer, но он не захотел работать
Пойду посмотрю еще на его ошибки, возможно исправлю. Хотелось бы конечно использовать нормальные, ранее написанные классы
спасибо! Я пока все делал и забыл про него
@AlDexor Даа!!! PhpSerializer заработал. Не знаю, что у меня в первый раз не получалось. Но сейчас все работает. Спасибо за подсказку

Boris
11.09.2017
15:25:01
http://joxi.ru/KAgYdNEigO5wOm?d=1
Прокачиваюсь, читаю статью, возник вопрос.

Stas
11.09.2017
15:26:00

Boris
11.09.2017
15:26:21
В yii2 приходится пользоватся вот таким способом отказавшись от конструктора. Правильно ли я понимаю что эта проблема возникает из-за yii2+AR?

Google

Boris
11.09.2017
15:26:34
В symfony используется DM? И с конструкторами все ок?

Николай
11.09.2017
17:16:25
Всем привет! Кто-нибудь знает как сделать красиво и изящно следующее. Есть модель, у нее есть свойство name. Мне нужно сделать что бы при сохранении проверялось существует ли модель с таким именем. И если уже есть, брать эту модель и обновлять, а не создавать новую.

SiZE
11.09.2017
17:18:45
$model = Model::find()->name($name)->limit(1)->one();
if ($model === null) {
$model = new Model();
$model->name = $name;
$model->save(false);
}

Николай
11.09.2017
17:28:56
Пасибо. А как что бы в других местах не переписыват?

Admin
ERROR: S client not available

Николай
11.09.2017
17:29:50
Или прямо в модели как то задать

Dmitriy
11.09.2017
17:31:08

Nikolay
11.09.2017
17:35:31

Yaroslav
11.09.2017
17:35:46
в сервис.

SiZE
11.09.2017
17:36:44

Dmitriy
11.09.2017
17:37:31
в Query можно

SiZE
11.09.2017
17:38:06
у меня гусиная кожа появляется от одной такой мысли

Yaroslav
11.09.2017
17:38:41
что плохого в createOrUpdate() ?

SiZE
11.09.2017
17:42:31

Alex
11.09.2017
17:43:04
Пиши сервисы с такими методами если оч хочется
но модель такого не должна иметь

Николай
11.09.2017
17:45:32
SiZE:
$model = Model::find()->name($name)->limit(1)->one();
if ($model === null) {
$model = new Model();
$model->name = $name;
$model->save(false);
} Те проще все таки так писать

Dmitriy
11.09.2017
17:45:46

Google

Yaroslav
11.09.2017
17:46:22
class ModelService
{
public function createOrUpdate($name)
{
$model = Model::find()
->where(['name' => $name])
->limit(1)
->one();
if ($model) {
$model->name = $name;
} else {
$model = new Model();
$model->name = $name;
}
if (!$model->save(false)) {
throw new \RuntimeException('Saving error.');
}
return $model;
}
}
... in controller
$model = $this->service->createOrUpdate($name)
Вроде норм.

Dmitriy
11.09.2017
17:46:24
if ($model === null) {
Еще хуже выглядит

SiZE
11.09.2017
17:47:24

Yaroslav
11.09.2017
17:49:29
ну можно в кверик byName, но тут это ед. место скорей всего будет, чего заморачиваться.

Dmitriy
11.09.2017
17:49:58

Alex
11.09.2017
17:50:32
юии походу не делает лимитацию автоматом)
типа вытягивает все и потом уже фильтрует

Yaroslav
11.09.2017
17:50:58
хоспади, это пример накиданый быстренько, чего ты мне разнос устраиваешь :)
ну про one(), да, он limit() не добавляет.

Kirill
11.09.2017
17:52:43
а почему бы и нет, другим полезно почитать

SiZE
11.09.2017
17:53:25

Николай
11.09.2017
17:54:00
Я не знаю чо ты там делаешь.
Есть форма с динамическими полями. В полях название лекарств . Типа вводишь парацетомол и если он уже есть то просто привЯзать его к рецепту а не создавать новый

Yaroslav
11.09.2017
17:55:06
ооох, тут надо быть осторожным с правильностью набора названия, одна опечатка и у нас парацетомол и порацетомол :)