
Evgeniy
03.10.2017
12:42:20
думаю все исходит в первую очередь из стоящих задач
после уже выбирается способ реализации

Ad.x ??
03.10.2017
12:45:56
все пилят getStatus() потому что какой-то умник на стаковерфлоу так написал, и все побежали повторять )

Boris
03.10.2017
12:48:01

Google

Ad.x ??
03.10.2017
12:49:49

Павел
03.10.2017
12:50:07
Прям как ты вчера
Но сегодня ты сам не свой ?

Ad.x ??
03.10.2017
12:50:25
пернатые на запах говна слетаются )

Stas
03.10.2017
12:50:35

Павел
03.10.2017
12:51:11

Boris
03.10.2017
12:51:12

Stas
03.10.2017
12:52:41

Ad.x ??
03.10.2017
12:53:10
выглядит как говно какое-то

Stas
03.10.2017
12:53:22
нах?

Ad.x ??
03.10.2017
12:53:33
чтоб понять что ты хочешь скзаать

Stas
03.10.2017
12:53:58
я ничего не хочу сказать пытался Борису объяснить

Google

Boris
03.10.2017
12:54:20
Объясни на примере что такое enum в файле.

Stas
03.10.2017
12:54:59
у меня такая хрень присутствует на проекте
class ArticleStatusEnum extends base\Enumerable
{
const ACTIVE = 1;
const MODERATE = 2;
const DELETED = 0;
public static $list = [
self::ACTIVE => 'Активная',
self::MODERATE => 'ОжидаетМодерацию',
self::DELETED => 'Удаленная',
];
public static function listData($exclude = array())
{
$list = self::$list;
foreach ($exclude as $item)
{
unset($list[$item]);
}
return $list;
}
}

Ad.x ??
03.10.2017
12:56:35
раньше тоже таким говном страдал кстати )

Stas
03.10.2017
12:56:38
че дали с тем и работаем

Ad.x ??
03.10.2017
12:56:51
какие-то отдельные классы для статусов... какая хуйня же это все )

Boris
03.10.2017
12:57:26
https://github.com/ElisDN/yii2-demo-shop/blob/master/shop/helpers/UserHelper.php
Как по мне весьма удобно.

Ad.x ??
03.10.2017
12:57:43

Stas
03.10.2017
12:58:14
это один из многих примеров

Ad.x ??
03.10.2017
12:58:29
максимум что можно вынести константы в интерфейс модели )
если такие кто-то делает :D

Stas
03.10.2017
12:58:42
у еслисеева просто грамотней написоно что ли

Boris
03.10.2017
12:59:17

Ad.x ??
03.10.2017
12:59:41
вот смори. делаешь ты такой обработчик формы

Иван
03.10.2017
12:59:50

Ad.x ??
03.10.2017
13:00:12
через конструктор напряму или через DI запускаешь туда модель свою AR, через ее интерфейс
к примеру
и следом тянешь ебеный статус )

Google

Ad.x ??
03.10.2017
13:00:43
потому что он там нужен. Статус имею в виду класс
щас накидаю пирмерный пример
https://pastebin.com/WqUQFWya
как-то так
$article = new Article(); // или Article::findOne($id) // или подтянуть ее откуда-то еще.
$form = new ExampleForm($model);
в контроллере

Павел
03.10.2017
13:14:26
Ну и в чем шибко разница?

Ad.x ??
03.10.2017
13:15:13
в гибкости
но ты вероятно не поймешь

Павел
03.10.2017
13:15:32
Ну я не один в чатике
Другие поймут

Boris
03.10.2017
13:21:04
Щито? Каокой save() в форме?

Павел
03.10.2017
13:21:14
Кроме гипотетической возможности наследоваться не вижу никаких преимуществ

Evgeniy
03.10.2017
13:21:31
какой то пиздец

Boris
03.10.2017
13:21:48
$this->article->setTitle($title);
$this->article->setStatus(ArticleStatusEnum::CREATED); // и вот тут ты тащишь свой вонючий класс.
//$this->article->setStatus(ArticleInterface::STATUS_CREATED); // а мог вот так
$this->article->save();
Щито? Какой setStatus? ты при сохранении каждый раз маслаешь руками поля?
С формы пришел status=0|1|10|30|etc ты его и пишеш в БД жи, не?

Ad.x ??
03.10.2017
13:22:59

Boris
03.10.2017
13:23:44
Блэт, а почему не сделать setStatusActive()|setStatusDelete|etc и не дрюкать моск?

Ad.x ??
03.10.2017
13:23:52

Boris
03.10.2017
13:24:30
Форму не должно жи волновать с каким статусом пришли данные

Google

Boris
03.10.2017
13:25:04
ее задача их принять и валидировать, все

Ad.x ??
03.10.2017
13:25:30
при апдейте тоже есть. ты просто придираешься к какой-то хуйне

Boris
03.10.2017
13:25:59
lol, ну ок

Ad.x ??
03.10.2017
13:26:20

Admin
ERROR: S client not available

Ad.x ??
03.10.2017
13:26:26
куда ты отдашь данные эти?

Boris
03.10.2017
13:27:08
в репозиторий
но сначала в сервис

Ad.x ??
03.10.2017
13:27:20
каким образом?
репозиторий как я понимаю заинжектишь в форму? или просто вернешь данные с формы?

Boris
03.10.2017
13:28:39
form->service->repository->entity в БД

Ad.x ??
03.10.2017
13:28:57
продлжай )
в ентити будешь че писать нет? )

Павел
03.10.2017
13:29:45
Жара

Ad.x ??
03.10.2017
13:29:56
ваще

Boris
03.10.2017
13:30:07
ога

Ad.x ??
03.10.2017
13:30:14
ты либо достанешь с репо этот ентити при обновлении
либо создашь новый и добавишь потом в репо
каким хуем это имеет разницу между твоими домыслами и моим примером?

Google

Boris
03.10.2017
13:31:24
тем что
да нет никакого шума, учат говнокодить тут )

Ad.x ??
03.10.2017
13:32:09
просто смотри
с формы пришел статус, как ты будешь выбирать какой метод использовать?
типа $entity->setStatusDeleted()
из твоего же примера

Boris
03.10.2017
13:32:56
С формы пришел status=0|1|10|30|etc ты его и пишеш в БД жи, не?

Ad.x ??
03.10.2017
13:32:57
свитч кейс? )
как ты его писать будешь? с формы в объект?
if ($form->status === 'deleted')
$entity->setStatusDeleted();
вот так ты будешь писать
угадал?

Boris
03.10.2017
13:35:05
nope

Ad.x ??
03.10.2017
13:35:13
ну твой же пример

Boris
03.10.2017
13:35:51
читать между строк это мощно
отлистай назад на первые сообщения и прочти внимательно

Ad.x ??
03.10.2017
13:36:16
ты просто нихуя не понял, натянул это на свое мировоззрение и возмутился

Boris
03.10.2017
13:36:33
ога)