У меня малый опыт работы с фреймворками, но недавно решил всерьез начать изучать laravel, так как показался более дружелюбным для новичков и в тоже время достаточно мощным. Подскажите как в нем реализуются следующие вещи:
1. Вставки. К примеру мне надо в шаблоне просто сделать какую нибудь вставку (например, логотип, редактируемый прямо в админке или сайдбар на каждой странице шаблона). Как это лучше сделать? Пока решаю эту проблему с помощью виджетов, но кажется есть какой то более правильный способ.
2. Интересно, что делают гуру, когда им требуется например реализовать комментарии или систему оценки материалов. Пишут ли они свои модули или же пользуются уже готовыми решениями?
3. Непонятно как сделать контроль доступа наилучшим образов. Искал подходящее решение, но так и не нашел ничего толкового.
Спасибо за такой пост.
Фрейм который рекомендуют гуру не имеет толкового решения авторизации даже после того, как человек сходил и поискал.
Какие-то виджеты, вьюкомпозеры, комьюнити, а по итогу "делай самостоятельно как нравится" - но главное скажешь потом что на Ларавеле собирал, т.е. "свое отдолбался".
Это к вопросу о Гуру. Их нету. Их не просто нету в Ларавеле, их нет в программировании. Их нет даже в мире - те что назвали себя гуру в чем-либо на деле просто это сделали от недостатка внимания.
Как правильно делать - могут сказать только те, кто однажды-дважды-кучуражды делал. И их код тоже будет отражать частное положение дел.
Таким образом - правильное решение родится тогда когда человеки начнут таки трошки знакомится друг с другом и раскладывать карты на общем столе, то бишь советоваться, а не делится опытом и ждать ответов вида "у меня так", "а у меня так", "а я так делаю"... собрать все "почему" в одну кучу и написать модуль из 100-200 строк, а не из 10000 собирать новую "технологию"
когда фраза "кто сення свободен, давайте регу по скайпу соберемся обсудим" - и вот так как-то. но это ж надо вечер убить, а так не хоцца. лучше потом, на тостере спросим
1) Что за виджеты? В Laravel нету никаких виджетов. Можно через View Composer давать нужны данные для глобальных шаблонов.
2) Нет смысла использовать какие-то готовые пакеты. Либо используешь свои наработки, либо пишешь под конкретный проект. На крайний случай есть disqus.
3) Про контроль доступа всё есть в документации https://laravel.com/docs/5.3/authorization Для ролей можно использовать пакет https://github.com/Zizaco/entrust
Стоит начать с чтения документации (внимательно) и 90% подобных вопросов отпадут. У Laravel одна из лучше документаций. Для всего остального есть laracasts.
например логотип прописываем прямо через тег img в шаблоне. Никакие сраные виджеты для этого не нужны, равно как и редактирование в админке. Операция одноразовая, можно и ручками поправить в случае чего. А с виджетом эта хрень будет генерится при каждом вызове. Оно вам надо?
Комментарии ищем готовые модули. Смотрим подходят ли они нам. Если да, то ставим. Нет - переделываем наиболее близкий, либо пишем новый.
Контроль доступа. Зависит от задачи. Если пользователей разделить на админ\не админ то достаточно добавить флаг в таблице пользователя. Если что-то посложнее, то стоит поискать какие-то расширения\модули\бандлы. Как они там называются. Короче посмотреть что есть готовое, вероятно оно вам уже подойдет. Если что-то нестандартно и извращенское, то сам писать конечно, предварительно изучив способы решения задачи.
на счет вставок не совсем понятно все же.. ок с логотипом действительно можно одноразово сделать. ну а к примеру как быть с меню и с другими элементами на странице, которые взаимодействуют с моделью? здесь уже кажется задача виджета верно?