Laravel. Интернет-ресурсы


Привет Хабр!

Когда я узнал, что на Хабре у Laravel появился собственный хаб, то сразу понял о чем будет моя первая статья для Хабрахабр. Точнее не статья, а обзор интернет-ресурсов о Laravel, большую часть которых я использую для того, чтобы каждый день радовать участников нашего сообщества свежими новостями. И, конечно же, это не все ресурсы, а только самые интересные и полезные. А если кому-то из вас интересны не только ссылки на интернет-ресурсы, но и сами материалы по Laravel, то с радостью приглашаю к нам в группу ВКонтакте. Так получилось, что за все время своего существования, а это всего 10 месяцев, наша группа стала самым большим и полным в мире ресурсом по количеству материалов о фреймворке Laravel. И другого такого Laravel интернет-ресурса я не знаю.


Laravel




Документация




«Пакеты» (Packages)


  • Для поиска пакетов для Laravel рекомендую воспользоваться замечательными сайтами: Packalyst и
    Laravel Packages Registry.
  • За новыми пакетами можно следить с помощью RSS и сообщений в twitter.
  • И, конечно же, пакеты для Laravel можно и нужно искать на Packagist и Github.


Поддержка


Если вам нужна помощь англоязычного сообщества, то получить поддержку вы сможете на:

На русском языке помощь сообщества можно получить:


Laravel в социальных сетях




Полезные сайты




Блоги




Видео уроки




Книги


В электронном виде:

Бумажный вариант:

А так же книги по Laravel на других языках.

Сайты на Laravel


Перечислять здесь список всех сайтов, построенных на Laravel, не имеет смысла. Лучше дам две ссылки:


Мероприятия


За время существования фреймворка прошло две официальных конференции и еще одна состоится в мае этого года.

Все встречи Laravel разработчиков (результат поиcка на сайте meetup.com).

Прочее




Коротко о Laravel 3


Несмотря на быструю популярность 4-й версии еще много людей пользуется 3-й версией фреймворка. Несколько полезных ссылок по Laravel 3:


Помощь и планы


Обращаюсь к аудитории Хабрахабра, если вам интересен фреймворк Laravel и у вас есть желание помочь сообществу, то прошу — пишите в комментариях, форуме или в нашей группе ВКонтакте.

Сейчас накопилось большое количество интересных и полезных материалов, которые хотелось бы перевести: материалы конференций, много видео-уроков, подкасты, статьи и постоянно обновляющаяся документация.

И, конечно, хотелось бы в дальнейшем радовать вас публикациями о Laravel.

Благодарность


Хочу поблагодарить участников нашего Laravel сообщества за то, что помогаете своим участием, за то, что пишете и переводите статьи, документацию, подкасты и участвуете в поддержке.

Спасибо!

Поделиться публикацией
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама
Комментарии 42
  • +23
    Вот бы вы первым абзацем написали о том, что вообще такое — Laravel
    • –5
      THE PHP FRAMEWORK FOR WEB ARTISANS.
      PHP THAT DOESN'T HURT. CODE HAPPY & ENJOY THE FRESH AIR.
      С сайта laravel.com.
      • –12
        Зайти в хаб по Laravel и требовать объяснений, что это такое. Гениально.
        • +14
          К сожалению, на Хабре не очень разумно устроена подписка на хабы. Я всё время боюсь пропустить новые интересные посты про какие-нибудь новые технологии, фреймворки, программы и так далее, поэтому как только появляются новые хабы, я тут же на них подписываюсь. В связи с этим не вижу ничего удивительного в том, что я не знал, что такое Laravel, когда открыл статью.
          • +3
            Пост на главной, на хаб я не подписан. Ничего гениального… Приходится пройтись по ссылкам, чтобы понять нужно ли это мне.
        • 0
          Отличная подборка ссылок! Спасибо ;)
          P.S. уже 4к+ подписчиков у хаба, радует…
          • +2
            Больше всего радует что данный фреймворк очень динамично развивается. Но недавно Тейлор сказал что начиная с версии 4,2 все вкусности будут платными и вот статья на эту же тему в русскоязычном сообществе. Что конечно немного огорчило изначально, ну а потом с какой стати разработчики должны писать замечательный фреймворк за «хлеб»?
            • 0
              Там не написано, что «все», не нагнетайте. Скорее всего будет репозиторий как у cartalyst, где обновления и форум поддержки будут доступны только тем, кто оплатил подписку. И наверняка будет торрент с этими модулями, который будет регулярно обновляться.
              • –3
                Немного не точно выразился, прошу прощения.
                И наверняка будет торрент с этими модулями, который будет регулярно обновляться.

                Эт да, но всегда стараюсь, преобретать платное по, а не качать с торрента, если программ действительно качественная и цена не более $100-130.
                • 0
                  Неужели еще и фреймворки надо будет на торренте качать? Интересно, что при этом будет за лицензия: либо «качай за деньги, используй где хочешь», либо «за деньги качай для себя, за отдельные деньги лицензируй per-site»?

                  Оно наверное и забавно, но ни разу не промышленно и уменьшает уверенность.

                  Тем более, что конкуренты таки есть. Хотя, конечно, тут кто на чем привык. вряд ли подписка будет кусача. Но, еще раз повторюсь, 1) нужно понимать, за что платятся деньги и 2) что будет дальше в смысле платности и развития.
                  • 0
                    Фреймворк всегда будет бесплатным. Платными будут некоторые модули к нему, написанные, оттестированные и поддерживаемые лично Тейлором и людьми из core-команды. Например, интернет-магазин (вряд ли сделают именно это, слишком банально и решений разных уже много, но продукты будут такого уровня, думаю).
                • –1
                  На kohana всегда и всё бесплатно, еще и с HMVC из коробки.
                  • 0
                    «если вам понадобился HMVC, то вы скорее всего допустили ошибку на этапе проектирования приложения» — не помню автора, возможно, Фаулер.
                    • 0
                      можно и пешком на работу ходить по 20 километров в день, обосновывая -это полезностью для здоровья.
                      цитатки у Вас конечно… как вконтатке, от не знаю кого и не знаю — зачем
                      • 0
                        20 км до работы пешком — это, имхо, как раз инициализировать всю http-request-response обвязку ради того, чтобы получить особым образом сформированные данные.
                        А выделять функцонал формирования этих данных в отдельные классы и вызывать их методы в контроллерах и других классах — это более правильный подход.

                        Вот вам именованная цитата, если вам так удобнее:
                        So, what is the solution to this dilemma? Many developers start packing logic into their controllers.
                        Once the controllers get large enough, they need to re-use business logic that is in other controllers.
                        Instead of extracting the logic into another class, most developers mistakenly assume they need to
                        call controllers from within other controllers. This pattern is typically called “HMVC”. Unfortunately,
                        this pattern often indicates poor application design, and controllers that are much too complicated.

                        Feel the need to call controllers from other controllers? Extract the logic into a third class that can be injected into any controller.

                        Taylor Otwell — Laravel: From Apprentice To Artisan, страница 24
                        • 0
                          А выделять функцонал формирования этих данных в отдельные классы и вызывать их методы в контроллерах и других классах — это более правильный подход.

                          Да, Ваш подход идеален для одностранички. Когда у Вас будут десятки тысяч строк кода, которые напичкан вызовами Классов прямо в контроллере, ваш подход становится неоправданно дорогим и выльется множеством человекочасов, особенно для новых сотрудников.

                          К тому же его гибкость весьма сомнительна, в kohana есть уже всё, что мне необходимо, гибкость любого уровня. laravel скоре напоминает конструктор для маленьких. И кстати при том, что в kohana как Вы говорите, есть сомнительная обвязка, она почему-то быстрее. чем Ваш сомнительный laravel, без обвязки вокруг http-request-response.
                          • 0
                            hello wolrd, которыми тестят фреймворки, не используют hmvc.

                            Я несколько лет работал с Коханой, это прекрасный простой фреймворк, её layered file system — реально находка. Но «гибкости любого уровня» там, к сожалению, нет — фреймворк провоцирует писать статическими классами или как в прокрустово ложе ложиться в MVC, весь код перенося в контроллеры и задействуя HMVC как средства против дублирования кода. Я почувствовал что если буду дальше делать сайты на Кохане, то буду говнокодить и со временем совсем отстану от php-движухи, тупо переписывая composer-пакеты в кохановские модули, так как под Кохану уже давно никто ничего не пишет. Поэтому перешел на Ларавель.
                            • 0
                              Мы не гонимся за «интернет-движухой», все модули написаны внутри самой компании. Кто-то может назвать это стагнацией, а кто-то стабильными проектами. Для одновневных проектов кохана не подходит, тут уж и правда лучше использовать что-то другое, быть может и вовсе готовую цмс.
                • 0
                  Из приведенного списка книг могу настоятельно порекомендовать «Laravel: Code Bright» от Dayle Rees, с отличным юмором написана книга, читать нескучно и в целом для старта (и как справочник) книга будет полезна.
                  Я бы с неё порекомендовал начинать изучать Laravel.
                  • 0
                    До "Code Bright" я пока не дошел (хотя уже купил). В свою очередь могу вкратце резюмировать "Laravel: From Apprentice to Artisan" Тэйлора.
                    Начинать изучать Laravel можно и с нее (ну и документацию на сайте никто не отменял). В книге в основном описан IoC, лежащий в основе фреймворка с примерами. В заключительной части книги подробно расписывается SOLID дизайн. Весьма позновательно.
                  • +1
                    Я посмотрел немного на код и мне показалось, что в нем есть что-то от Ruby.
                    • 0
                      Автор говорил, что фреймворк «ruby inspired».
                      • 0
                        Простите за категоричность, но все существующие РНР фреймворки делятся на
                        * Rails clone — Laravel, Yii, Phalcon, Symfony1,…
                        * Spring clone — Symfony2, Zend2
                        * Sinatra clone — Silex, Slim, etc

                        Так что вы всегда можете встретить что-то знакомое.
                      • +1
                        Прошу, прощения если что то упустил, хотелось бы узнать на сколько хуже / лучше данный фреймворк по сравнению, например, с Yii?
                        • +1
                          Лучше или хуже, решать только вам, но у Laravel есть несколько неоспоримых преимуществ по сравнению с Yii
                          1) Более современный, минимальная версия PHP на которой работает Laravel 4.1 это 5.3.7, для Yii это 5.1.
                          2) Laravel более популярный по сравнению c Yii (зарубежном)
                          3) В Laravel по умолчанию есть драйвера для работы с серверами очередей.
                          4) В Laravel используются PSR стандарты
                          • +1
                            Про популярность и Google Trends несогласны.
                            • 0
                              За пиндоссию и океанию таки согласны, о чем в пункте 2 и замечено
                          • 0
                            С Yii сравнивать некорректно, сравнивать следует с Yii2.

                            Каких-то особых преимуществ я не заметил, с другой стороны в Yii2 можно делать вещи, пока недоступные для L4 (например, RaR с фильтрацией по полям отношения)
                            • 0
                              Простите, первый раз слышу аббревиатуру RaR. Не просветите?
                              • 0
                                ar = record.
                                rar = relational active record.
                                • 0
                                  Вы имеете ввиду связывание моделей по N критерию, при этом ограничение некоторых полей этих моделей? Или может связывание моделей по нескольким критериям?

                                  Я просто не понимаю что Вы хотели сказать сообщением: «Относительный ActiveRecord с фильтрацией по полям отношения».
                                  • 0
                                    Ниже прояснил.
                                    Вот это: select * from post left join author on post.id = author.id where author.name = '...';
                                    только через RAR.
                                    • 0
                                      Вариант 1:
                                      class Author extends Eloquent
                                      {
                                          public function posts()
                                          {
                                            return DB::table(self::$table)
                                              ->leftJoin('author', 'post.id', '=', 'author.id')
                                              ->whereRaw('author.name = ?', [*****])
                                              ->get();
                                          }
                                      }


                                      Вариант 2:
                                      class Author extends Eloquent 
                                      {
                                          public function posts()
                                          {
                                              return $this->hasMany('Post');
                                          }
                                      }
                                      
                                      class Post extends Eloquent 
                                      {
                                          public function posts()
                                          {
                                              return $this->belongsTo('Author');
                                          }
                                      }
                                      


                                      Если я ничего не путаю, это экспромт. Документация: laravel.com/docs/eloquent#relationships Прошу заметить, что нижеупомянутая Eager Loading находится тут: laravel.com/docs/eloquent#eager-loading
                                      • 0
                                        Скорее всего путаете (или документация неполна), потому что прямо по Вашей ссылке #eager-loading приводится результирующий запрос к БД:

                                        select * from books
                                        select * from authors where id in (1, 2, 3, 4, 5, ...)
                                        • 0
                                          В eager loading да, но в hasMany совсем другой запрос получается, с указанными джоинами.
                                          • 0
                                            Не, стоп, при чем тут hasMany.

                                            Мне нужно добыть все книги, которые belongsTo авторы. У каждой книги один автор, books.author_id = authors.id.
                                            Пример требуемого sql-запроса я привел.

                                            В случае hasMany (допустим, books hasMany images, т. е. у каждой книги много картинок) джойн как раз не нужен, иначе это фееричный запрос получится.
                                      • 0
                                        Как-то так:

                                        public function postsBy($author)
                                        {
                                            return $this->belongsTo('author')->where('author_name', '=', $author);
                                        }
                                        
                                • 0
                                  Выходит все упирается в «вопрос религии» и предпочтений?
                                  • 0
                                    Не совсем.

                                    На простых приложениях — действительно религия. Приложения типа «хелло ворлд» (что в доках фреймворков обычно выглядит как «напишем свой движок для блога») везде примерно одинаковые.

                                    Но дьявол, как обычно, в деталях. Когда дело доходит до чего-то чуть более сложного, чем блог, могут внезапно начаться проблемы.

                                    Возьмем, к примеру, уже упомянутый мной выше RAR. Авторы современных фреймворков очень любят писать всякие красивые слова про NoSQL, проблему N+1 и круто реализованную жадную загрузку. А потом внезапно оказывается, что невозможно вывести список постов с авторами, отсортированный/отфильтрованный по имени автора (пример для блога), потому что все записи из отношения выгребаются отдельным запросом. Т. е. не select… from posts left join authors, a select… from posts, select… from authors where id in (...).

                                    А на вопрос «а как бы сделать так, чтобы можно было» чаще всего следует ответ «используйте DAO».
                              • 0
                                Выглядит интересно. Но вот платный PHP-фрэймворк? И много они продадут, прежде чем всё это начнут сливать в сеть?

                              Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.