Сергей
Причем тут ООП вообще.
Дмитрий
Да ну их, ничего не умеют)
Сергей
Используя шаблонизатор - ты смешиваешь html и лексемы шаблонизатора)
Самое крутое в шаблонизаторах реюзабельность, удобство, расширение шаблонов и кэширование. Но ты все это можешь и сам реализовать на пыхе, конечно, но зачем, если есть готовое решение.
Denulis
Только один раз чтоли показывает? Ушел Get, пришел POST, и все при повторном выборе не отправляется Get? Или я не так понял
Сергей
А так не слушайте тех, кто говорит, что использовать пхп в html - херовая практика. Его для этого и создали, например. Вопрос только в том, что вы можете делать это удобнее.
Denis
А так не слушайте тех, кто говорит, что использовать пхп в html - херовая практика. Его для этого и создали, например. Вопрос только в том, что вы можете делать это удобнее.
Не слушайте тех, кто говорит, что смешивание кода - это норма. Покажи мне хоть один нормальный проект где так сделано.
Denulis
Ambrella
Сергей
Сергей
Во втором случае мы не смешиваем html и синтаксис шаблонизатора?
Denis
https://stackoverflow.com/questions/731743/php-vs-template-engine
Denis
PHP is not a template engine, but a language that can be used to write templates, or template engines. ... Instead, you should take such libraries, as Zend_View in Zend Framework to comparisons (basically, it works exactly in the same way, as Smarty, except that it uses PHP to write templates).
Denis
Сергей
Много у тебя проектов на PHP?
Да. И я использую шаблонизаторы.
Сергей
В каждом.
Сергей
Потому что это, блядь, удобно и дает тебя всякие прикольные фичи, но точно не из-за "смешивания" кода.
Сергей
Поздравляю, ты эгоист и говнокодер
Лол. Чувак, ты просто решил доебаться и пытаешься выглядеть умным, но, увы, ты обосрался)
Дмитрий
Ну жизнь штука небезопасная)
Сергей
Это небезопасно.
А если он предварительно обработал переменную?)
Maksim
Чем принципиально отличается <div><?php echo $lol;?></div> от <div>{{lol}}</div>
тем что шаблоны обычно не являются языками программирования соответственно выстрелить себе в ногу во вьюхе гораздо сложнее
Maksim
Бля, теперь я понимаю, почему столько говнокода на js.
ну слушай, если у тебя не получается писать код нормально, то может что-то еще попробуешь?
Дмитрий
Ну если обезьяну допускать к шаблонизатору, она всё равно что угодно на странице наворотит
Сергей
Покажи свой код на PHP
https://pastebin.com/xpmuCBqd
Сергей
Ахахахах
Сергей
Достаточно?
Сергей
Бля, чувак, ты доебался уже до моего кода, но так и не ответил на мой вопрос. > Чем принципиально отличается <div><?php echo $lol;?></div> от <div>{{lol}}</div>?
Denis
Тебе сказали же. Макс сказал.
Denis
Бля, чувак, ты доебался уже до моего кода, но так и не ответил на мой вопрос. > Чем принципиально отличается <div><?php echo $lol;?></div> от <div>{{lol}}</div>?
Принципиально ещё тем, что под капотом шаблонизатора могут быть любые проверки, а эхо ты не перезапишешь.
Denis
https://pastebin.com/xpmuCBqd
Это все что ты написал на PHP?
Сергей
Принципиально ещё тем, что под капотом шаблонизатора могут быть любые проверки, а эхо ты не перезапишешь.
Я могу предварительно обработать переменную, например. Вопрос не в том, что дает шаблонизатор, а в том, что нихуя разницы нет в плане смешивания кода, о котором ты с пеной у рта тут строчишь.
Сергей
Это все что ты написал на PHP?
Ну а хули ты хотел? Кризис!
Сергей
Тебе ж никто не говорит, что шаблонизаторы это плохо. Это наоборот заебись, но при использовании шаблонизатора, ты абсолютно так же мешаешь код.
Denis
Если ты её не видишь - не значит что её нет.
Oleg
ребзя, выйдите на солнышко посмотрите лучше, к чему этот утренний срач ни о чем
Сергей
Если ты её не видишь - не значит что её нет.
Ладно, чувак, ты чо-то неадекват какой-то. Ты о чем-то другом вообще рассуждаешь и не вникаешь в то, что я написал.
Сергей
У нас тучи(
А тучи как люди.
Дмитрий
Они одиноки
Oleg
но все -таки тучи не так жестоки как остервенелые пыхеры
Denis
Да никто и не срется, лол.
А теперь перечитай это всё еще раз и подумай, кто из нас неадекват с пеной у рта, а кто нет.
Сергей
А теперь перечитай это всё еще раз и подумай, кто из нас неадекват с пеной у рта, а кто нет.
Да успокойся уже, чувак. Мы все поняли, ты прав. Ты крутой хацкер!
Сергей
Шаришь за шаблонизаторы и кодишь по дзену.
Denis
Шаришь за шаблонизаторы и кодишь по дзену.
Можешь проверить https://gitlab.com/pyro-plus
Сергей
Можешь проверить https://gitlab.com/pyro-plus
Красава, так держать! А PyroCMS - это как BolgenOS, только CMS?
Denis
Думаю надо начать с аддонов и автолодера... Для тех кто устанавливал лару - Pyro имеет некоторые отличия: В пиро папка app почти пуста (в ней все равно можно писать, но, ай белив - это лишнее). То же самое можно сказать и относительно содержимого папок database и resources. The best practice - это держать свой код в аддонах. АДДОНЫ. Каждый аддон - отдельный пакет на пакаджисте (при желании на гите), и, следовательно - имеет свой composer.json, в котором и прописан PSR-4 неймспейс для автолодера. Все аддоны, являются наследниками одного класса, и всего их пока 5 видов: 1. Module - представляет из себя неймспейс и раздел в админке. Может содержать несколько моделей (streams), а так же полей (fields). Стоит заметить, что поля, могут быть реюзабл в пределах одного неймспейса (модуля) для нескольких моделей (streams). Использование определенного поля, определенной моделью и называется связью (assignment). 2. FieldType - тип поля служит для определения правил миграции и дальнейшего взаимодействия с БД, для одной ячейки данных у модели. Он содержит тип поля, но может содержать аксессор, мутатор, схему - классы в которых и описываются эти правила. Отношения - тоже описываются здесь (я не имею ввиду прямого указания модели). 3. Theme - тема. Тут особо нечего - бывают двух видов: админка и фронт. Показываются в настройках в админке (хран в БД). Может быть перекрыто последовательно, из нескольких мест в ФС (самое сильное - .env) 4. Plugin - это тупо плагин твиг. 5. Extension - с ним ситуация, как с бубями в преферансе: "не с чего ходить - ходи с бубей". Внутри может быть размещена любая логика. Оно может быть связано по универсальному ключу с другими аддонами, что, по сути, является еще одним способом расширения с наследованием, но речь сейчас не о нем. Важно, что, несмотря на разделение, благодаря общему родителю, аддоны могут пересекаться классами. Например, не обызательно создавать отдельный аддон для плагина, достаточно создать класс плагина в модуле и подключить его в сервис-провайдере. Это касается почти всего. Класс сервис провайдера может содержать любой из аддонов. МИГРАЦИИ и устройство БД. Платформа стримс имеет свой расширенный мигратор, который способен читать миграции, заданные в декларативном стиле. Файлы миграций создаются автоматически, при скаффолде аддонов определенных типов, а также при скаффолде стрима(модели). The best practice, если мы говорим о модуле, ИМХО - иметь один файл миграции для модуля, в котором описываются все используемые поля, и по одному на каждую модель - в них описываются параметры моделей и принадлежность к ним полей. Важно, что в любой миграции, могут быть использованы стандартные для Ларавел up() и down() методы. БД имеет в названиях своих таблиц жесткую зависимость $app_reference, неймспейса и модели. Структура такова: applications - "корневая" таблица, она имеет связь с applications_domains и это единственные таблицы, имеющие название без префикса. Все другие таблицы имеют в качестве префикса в названии "{$app_reference}_" streams, fields и assignments - это "служебные" таблицы. Они содержат информацию о: - других таблицах с базе и их свойствах (streams) - полях, которыми имеют возможность обладать таблицы (fields) - реальных фактах обладания каких-то таблиц, какими-то полями (assignments) Остальные таблицы имеют жесткую зависимость от описаных выше! "{$app_reference}_{$namespace_slug}_{$stream_slug}" А если стрим (ряд) имеет поле translatable === true, то еще и "{$app_reference}_{$namespace_slug}_{$stream_slug}_translations" Это не все - могут быть еще вариации конфигураций. Не будем на них останавливаться. Когда меняется содержимое служебных таблиц (а это модели ларки), наблюдатель триггерит событие Eloquent, которое, в свою очередь, запускает команду - одну из команд - проводящих маленькую миграцию, соответствующую изменениям. Любые другие таблицы могут быть безболезненно созданы в базе, если только их имена не имеют конфликтов со схемой описанной выше.
Сергей
слился
Да, конечно, йопт. Я не такой крутой, чтобы с такими титанами воевать.
꧁༺ĤŐŔŃŶ
ну и ливни почитать полезной литературы
꧁༺ĤŐŔŃŶ
Двач?
если ты только там и тусуешь, да 🤷🏼‍♂️
Denis
А что такое Двач?
꧁༺ĤŐŔŃŶ
А что такое Двач?
говорят это помойка для токсиков и неадекватов, отбитых еще в роддоме, но я могу ошибаться
Сергей
Denis
Это чат?
Сергей
Это чат?
Ну что-то вроде того.
꧁༺ĤŐŔŃŶ
Звучит как неосиление
🤷🏼‍♂️ мне там делать нечего
Сергей
ЭТО БОЛЬШЕ, ЧЕМ ЧАТ.
Anonymous
Борда
Frontend Priest
Двач в плане айти - лучший портал хотя бы потому, что там с вами не нянькаются, как в чятиках. Если вопрос уже был или его явно можно решить в одно лицо, там сразу шлют нахуй.
Сергей
🤷🏼‍♂️ мне там делать нечего
Абу забанил, вот ты и злишься.
꧁༺ĤŐŔŃŶ
Я туда никогда не ходил, и представление о нем имею лишь по высказываниям "двачеров"
Denis
ЭТО БОЛЬШЕ, ЧЕМ ЧАТ.
Могу похвастаться перепиской с Тейлором Отвеллом. Это - больше чем чат, а твой двач, я уверен - хуйня