Axenia
Serhii (85.03) увеличил карму remote_adm (4000.46)
Am
вот было бы не плохо
Дык, Вы сниппет пишите, вот и добавьте туда подобный функционал. (:
Am
+ Спасибо, то что искал.
И когда решат отказаться от @B_FILE, то придется переделать сниппет. ((%
Serhii
та я вот не могу понять как с блейдом работать отдельно от ядра
Serhii
штука то мощная и удобная
Am
та я вот не могу понять как с блейдом работать отдельно от ядра
Не очень понятно что Вы там пытаетесь сделать. Смысл сниппетов в целом теряется когда есть контроллеры и пакеты. Возможно, просто не туда идете. В сниппете, обычно, не привязывают какой-то отдельный путь к шаблону, а выносят в настройку чтобы можно было использовать и дальше. Ну и сам сниппет, в рамках Эво, просто обрабатывает данные выдавая результат и привязка внутри сниппета к какому-то шаблону частично используемому по сути чанку как-то немного странно выглядит. Может, опять же, не всё понятно что делаете.
Serhii
Может действительно не туда иду.
Serhii
Идея в следующем, Делаю отдельный модуль новостей, на проекте 29 языков, но задачу ставлю себе таковую чтобы этот модуль был универсален и можно было использовать и в других проектах. При этом чтобы это всё были в одном месте. Там модуль, плагин и сниппет.
Serhii
В контроллерах то понятно, но хочется сделать так, чтобы установил и завелось
Serhii
вот пример мультияза для этого дела https://github.com/Seiger/seigerlang
Aliaksandr
Вне ядра но средствами ядра это так https://github.com/webber12/evocms-user/blob/master/src/Services/SendForm.php#L39
Aliaksandr
И там внутри хоть чанк b_file, хоть code
Aliaksandr
В теории, конечно же😁
Andrey
Странно. Я думал внутри там везде блейды и вьюшки.
Aliaksandr
Внутри чего именно? Внутри своего можно делать как угодно :)
Andrey
Ну в твоём пакете. Типа везде новый стиль, блейды
Aliaksandr
Зачем урезать стандартный функционал эво, который парсит и блейды и твиги и обычные коды/файлы только до блейда? У меня не было никогда цели подрочить на блейд, я же вырос в рамках эво, где 10 разных вариантов сделать одно и то же ))
Andrey
И то верно
Aliaksandr
Тем более, что он и нужен то в одном месте: распарсить reportTpl для формы
Aliaksandr
Остальное там все возвращается в виде responce()->json()
Aliaksandr
Т.е. это просто пример, как штатными средствами трешки парсить чанки своих сниппетов :)
Aliaksandr
https://github.com/webber12/evocms-user/blob/master/src/Helpers/Response.php#L19
Aliaksandr
И не спрашивай, зачем для этого отдельный класс 😁😁
Andrey
Да хозяин-барин... Я бложег доделал по системе этой, когда в 1 контроллер 1 метод. Итого этих контроллеров там как говна за баней. Но зато какая-никакая структура и повторяемость
Aliaksandr
Ну хз, насколько я понимаю, основная мощь ларавеля должна крыться в сервис-контейнерах, которые подключаются через сервис-провайдеры. А нахуевертить 2 вагона контроллеров на голые роуты - так себе разработка на ларавеле ))
Aliaksandr
Наверно это уровень сложности где-то между сниппетами aDate и alterTitle по их шкале ))
Aliaksandr
Хотя хз, завоза вагона уникальных великолепных дополнений на ларавеле мы так и не дождались же)) может их и вообще не существует, раз никто не видел
Andrey
Ну хз. У меня там всякое говно типа отдельных реквестов и целый 1 сервисный класс.
Andrey
Да че болтать) https://github.com/0test/blog.localhost открыл
Andrey
Вдруг кому и правда бложег нужен.
Aliaksandr
Вдруг кому и правда бложег нужен.
+ блог готов, принимайся за магазин, и чтоб сразу с опциями, мультивалютами и кабинетом 😁
Axenia
webber_12 (6894.47) увеличил карму remote_adm (4083.49)
Andrey
Я считерил и сделал модели и их связи также, как сделано у Михаила
Andrey
Нет, не открыли. (:
"This repository is currently public."
Andrey
У меня гит вообще какое-то время не работал толком. Блокировки что ли были, хз.
Am
Майкрософт же, классика. ((:
Andrey
Да вот думаю в новом году на работе может на gitlab попробовать.
Andrey
У меня там два сайта просятся прям — "сделай на дев-прод, а то умрём".
Aliaksandr
А там по урокам было столько контроллеров?)
Andrey
Да. 1 действие — 1 контроллер)
Aliaksandr
Обычно же одна сущность - один контроллер PostController, а создание, редактирование, показ и т.п. разруливать методами
Aliaksandr
Т.е. таблица posts, к ней модель Post и контроллер PostController
Andrey
И типа если я рабтаю с моделькой коммента - то вот тебе по одной штуке на показ, апдейт, удаление и т.п. Ну вот такой метод у человека. Также точно оно в роутах и вьюшках. И вцелом получается логично, не надо придумывать названий. Просто копировал, вставил - и ты уже вместо коммента с тегом... Да, можно и в 1 файл. Мне тоже как-то дико казалось, но решил не выёбываться и сделать как люди говорят.
Am
Ещё чуть-чуть и всё-таки понравится шаблон ADR. (;
Aliaksandr
Хз, сколько видел гайдов по ларе везде обычно шло posts/Post/PostController, users/User/UserController и т.п.
Aliaksandr
Тут какой-то свой метод ))
Andrey
Мало того... Если заглянуть в контроллеры поста, то они унаследованы от базового, в который отдаётся файлик сервиса, и уже в этом файле методы работы с постом. Хер докопаешься, где что лежит.
Andrey
Я не знаю, зачем так. Предполагаю, что это подход для разработки чего-то такого мега-большого, где, скажем, на создание поста (условно) допом идёт гора всякого. И чтобы не совать всё в 1 файл, делают так.
Aliaksandr
Хз, по ощущению похоже, что где-то кто-то кого-то наебывает ))
Aliaksandr
Структура, чтоб для админа был отдельный контроллер редактирования поста выглядит странновато )
Andrey
А чего эт? Своя валидация, то-сё.
Andrey
Ну если заюзать. У меня там вроде 1 реквест файл.
Aliaksandr
Ну так есть реквест к контроллеру Post, в методе authorize() проверяешь, может ли его чел слать, в методе rules() проверяешь, насколько он валидный - и в бой
Aliaksandr
Я так пока мыслю ))
Andrey
Ну так це не образец. Или образец, но образец именно того подхода.
Aliaksandr
Сейчас окажется что и в ларавеле нет правильного прямого пути, а есть хуилиард обходных костылей 😅😅 и наша жизнь никогда не будет прежней )))
Andrey
Ну как бы уже ответ "да"
Andrey
Однометодные контроллеры, ресурс-контроллер, просто "хуяк и это контроллер".
Aliaksandr
Ну так це не образец. Или образец, но образец именно того подхода.
Не, так я ж без претензий, просто в рамках так сказать обсуждения разных подходов говорю, что видел я и как я примерно понял ))
Andrey
Ну я предыдущий проект так и делал. Сейчас возвращаюсь и думаю, где что лежит... А тут вроде хотя бы структура ясная, ты вот с первого взгляда понял, что за херня и почему её куча))
Andrey
Дальше мысли попробовать это дело поженить хотя бы в админке с vue. Чтобы прям летало нафиг. Но это нужна ещё прекрасная неделя без детей, с оливье и новым жёстким диском...
Anonymous
Все не читал, но таким же болею последнюю неделю
Anonymous
В архитектуру подался, а там ddd, cqrs, event sourcing, слоистая архитектура и куча всего вокруг
Аляксандр
В архитектуру подался, а там ddd, cqrs, event sourcing, слоистая архитектура и куча всего вокруг
А по факту всё-равно часто на это забивают. Как-то чем больше погружаюсь в проекты сторонние то всё больше и больше замечаю забивания на все эти структуры и прочие вещи
Dmytro
А по факту всё-равно часто на это забивают. Как-то чем больше погружаюсь в проекты сторонние то всё больше и больше замечаю забивания на все эти структуры и прочие вещи
Потому что писать правильно это банально дороже ибо больше думать надо что б хорошо получилось. А так костяк собрал синиором а дальше джуны отдельные части пишут и там главное что б правильно ввод вывод работал а что внутри уже не так критично
Dmytro
Так что тут вопрос желание писать красиво упирается в действительность и $ в итоге
Am
Дык, так всегда и есть. Нет смысла тратить время и деньги там, где это никому не нужно, тем более это может усложнить проект и его поддержку. Шаблоны проектирования нужно знать для того чтобы понимать почему в проекте применили тот или иной подход к разработке и как двигаться дальше. Это просто "общение" в котором так же не все однозначно, т.к. многие шаблоны каждый разработчик понимает по своему. (%
Am
Так появился битрикс
Так много чего появилось. ((% В том же ларавель часть людей называют шаблон служб (service) - шаблоном шлюза (gateway). По сути просто передавая данные из контроллера в "шлюз" и обрабатывая их там выдавая в контроллер результат. В ларавель очень часто используя шаблон ADR исходят из того что Respoders это отдельный дополнительный класс в котором происходит вся логика презентации. При этом как-то не особо акцентируют внимание на Domain, он как бы "сращивается" с Respondres. В том же slim когда использую ADR больше уделяю внимания Domain и вся магия происходит в Service отделяя Repository используя его только как хранилище данных. А сам Responder делаю универсальным без выноса в отдельный класс для каждого действия. Принцип один и тот же, шаблон один и тот же, а подход - разный.
Am
Вот в том OOP часть говорят про SOLID и как часть этого о Принципе единственной ответственности (SRP), а потом ругаются на "большое кол-во" файлов и лепят в один контроллер кучу методов создавая "толстые контроллеры" с огромным кол-во обязанностей. Не говоря уже о наследовании от базового контроллера с кучей обязанностей. (%
Anonymous
Все верно сказано
Anton
Привет! Подскажите пожалуйста, почему такая конструкция не работает на странице "спасибо за заказ" [[include? &session=shk_order_id]] - работает [[include? &session=shk_order_price]] - не работает Шопкипер 1.3.6RC Order management Версия EVO 1.4.11
Am
А там шаблон проектирования "спагетти-код". (:
Alexander
А там шаблон проектирования "спагетти-код". (:
тогда ответ - потому что гладиолус)
Anton