Konstantin
если зачем-то надо передавать в шаблон данные именно массивом
Konstantin
а вообще enum сделал и не делаешь бошку
с локализацией будет плохо
Konstantin
(если она зачем-то нужна)
la vie noire
при условии что она нужна зачем то
Konstantin
а, перепутал, не attributes(), а fields()
la vie noire
не думаю что все пилят на локализациях все
la vie noire
думаю все исходит в первую очередь из стоящих задач
la vie noire
после уже выбирается способ реализации
The Ant
все пилят getStatus() потому что какой-то умник на стаковерфлоу так написал, и все побежали повторять )
The Ant
Чего за шум снова?
да нет никакого шума, учат говнокодить тут )
Павел
Прям как ты вчера
Павел
Но сегодня ты сам не свой 😆
The Ant
пернатые на запах говна слетаются )
Stas
правильнее будет хранить в enum тектстовые статусы
ну так там и хранятся если их немного а если много тогда в базе
Павел
пернатые на запах говна слетаются )
Ну как обычно ты уже там
Stas
а enum чо не в базе хранится?
имеется в виду файл енум с константами и методами возвращающими тектовый вариант их скажем так
The Ant
выглядит как говно какое-то
Stas
нах?
The Ant
чтоб понять что ты хочешь скзаать
Stas
я ничего не хочу сказать пытался Борису объяснить
Borys
Объясни на примере что такое enum в файле.
Stas
у меня такая хрень присутствует на проекте 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; } }
The Ant
Stas
The Ant
раньше тоже таким говном страдал кстати )
Stas
че дали с тем и работаем
The Ant
какие-то отдельные классы для статусов... какая хуйня же это все )
Borys
https://github.com/ElisDN/yii2-demo-shop/blob/master/shop/helpers/UserHelper.php
Borys
Как по мне весьма удобно.
The Ant
Хэлпер жи.
да дерьмо мусорное )
Borys
Stas
https://github.com/ElisDN/yii2-demo-shop/blob/master/shop/helpers/UserHelper.php
че то похожее но свое самописное
Stas
это один из многих примеров
The Ant
максимум что можно вынести константы в интерфейс модели )
The Ant
если такие кто-то делает :D
Stas
у еслисеева просто грамотней написоно что ли
Borys
у еслисеева просто грамотней написоно что ли
Без сторонних классов как у тебя (если правильно понял)
The Ant
вот смори. делаешь ты такой обработчик формы
The Ant
через конструктор напряму или через DI запускаешь туда модель свою AR, через ее интерфейс
The Ant
к примеру
The Ant
и следом тянешь ебеный статус )
The Ant
потому что он там нужен. Статус имею в виду класс
The Ant
щас накидаю пирмерный пример
The Ant
https://pastebin.com/WqUQFWya
The Ant
как-то так
The Ant
$article = new Article(); // или Article::findOne($id) // или подтянуть ее откуда-то еще. $form = new ExampleForm($model); в контроллере
Павел
Ну и в чем шибко разница?
The Ant
в гибкости
The Ant
но ты вероятно не поймешь
Павел
Ну я не один в чатике
Павел
Другие поймут
Borys
Щито? Каокой save() в форме?
Павел
Кроме гипотетической возможности наследоваться не вижу никаких преимуществ
la vie noire
какой то пиздец
Borys
$this->article->setTitle($title); $this->article->setStatus(ArticleStatusEnum::CREATED); // и вот тут ты тащишь свой вонючий класс. //$this->article->setStatus(ArticleInterface::STATUS_CREATED); // а мог вот так $this->article->save(); Щито? Какой setStatus? ты при сохранении каждый раз маслаешь руками поля?
Borys
С формы пришел status=0|1|10|30|etc ты его и пишеш в БД жи, не?
The Ant
Borys
Блэт, а почему не сделать setStatusActive()|setStatusDelete|etc и не дрюкать моск?
Borys
Блэт, а почему не сделать setStatusActive()|setStatusDelete|etc и не дрюкать моск?
Если статус сам ставишь, а не приходить откуда-то, тогда его и не должно быть в форме ввода.
Borys
Форму не должно жи волновать с каким статусом пришли данные
Borys
ее задача их принять и валидировать, все
The Ant
Если статус сам ставишь, а не приходить откуда-то, тогда его и не должно быть в форме ввода.
статус может быть в форме ввода, при создании статей он как правило бывает "опубликовано" например
The Ant
при апдейте тоже есть. ты просто придираешься к какой-то хуйне
Borys
lol, ну ок
The Ant
куда ты отдашь данные эти?
Borys
в репозиторий
Borys
но сначала в сервис
The Ant
каким образом?
The Ant
репозиторий как я понимаю заинжектишь в форму? или просто вернешь данные с формы?
Borys
form->service->repository->entity в БД
The Ant
продлжай )
The Ant
в ентити будешь че писать нет? )