Laravel Quickstart

Инсталация

Чрез Laravel Installer

Първо изтеглете инсталатора на Laravel с помощта на Composer.

composer global require "laravel/installer=~1.1"

Уверете се, че сте поставили ~/.composer/vendor/bin директорията във вашия PATH (или C:\%HOMEPATH%\AppData\Roaming\Composer\vendor\bin ако работите с Windows), така че laravel изпълнимият файл да бъде намерен, когато стартирате laravel командата във вашия терминал.

След като бъде инсталиран инсталатора, командата laravel new ще създаде нова инсталация на Laravel в указаната от вас директория. Например, laravel new blog ще създаде директория с име, blog съдържаща нова инсталация на Laravel с всички инсталирани зависимости. Този метод на инсталиране е много по-бърз от инсталирането чрез Composer.

Чрез Composer

Рамката Laravel използва Composer за инсталиране и управление на зависимости. Ако все още не сте, започнете с инсталирането на Composer .

Сега можете да инсталирате Laravel, като издадете следната команда от вашия терминал:

composer create-project laravel/laravel your-project-name 4.2.*

Тази команда ще изтегли и инсталира ново копие на Laravel в нова your-project-name папка в текущата ви директория.

Ако предпочитате, можете алтернативно да изтеглите копие на хранилището Laravel от GitHub ръчно. След това изпълнете командата composer install в корена на ръчно създадената директория на проекта. Тази команда ще изтегли и инсталира зависимостите на рамката.

Разрешения

След като инсталирате Laravel, може да се наложи да предоставите разрешения за запис на уеб сървъра в app/storage директориите. Вижте документацията за инсталиране за повече подробности относно конфигурацията.

Сервиране на Laravel

Обикновено можете да използвате уеб сървър като Apache или Nginx, за да обслужвате вашите приложения написани на Laravel. Ако сте на PHP 5.4+ и искате да използвате вградения сървър за разработка на PHP, можете да използвате командата на Artisan serve:

php artisan serve

По подразбиране HTTP сървърът ще слуша на порт 8000. Ако обаче този порт вече се използва или искате да обслужвате множество приложения по този начин, може да посочите точно кой порт да използвате. Просто добавете аргумента –port:

php artisan serve --port=8080

Структура на директорията

След като инсталирате рамката, хвърлете един поглед на проекта, за да се запознаете със структурата на директориите. В директорията app се съдържат папки, като например viewscontrollers и models. Повечето от кода на вашето приложение ще се намира някъде в тази директория. Може също да пожелаете да разгледате app/config директорията и опциите за конфигуриране, които са достъпни за вас.

Местна среда за развитие

В миналото конфигурирането на локална среда за разработка на PHP на вашата машина беше истинско главоболие. Инсталирането на правилната версия на PHP, необходимите разширения и други необходими компоненти по принцип отнема много време и същевременно обърква. Вместо това, помислете за използването на Laravel Homestead. Homestead е проста виртуална машина, предназначена за Laravel и Vagrant . Тъй като кутията Homestead Vagrant е предварително опакована с целия софтуер, който ви е необходим, за да изградите стабилни PHP приложения, можете да създадете виртуализирана, изолирана среда за разработка за секунди. Ето списък на някои от лакомствата, включени в Homestead:

  • Nginx
  • PHP 5.6
  • MySQL
  • Redis
  • Memcached
  • Beanstalk

Не се притеснявайте – въпреки че „виртуализираното“ звучи сложно, то е безболезнено. VirtualBox и Vagrant, които са двете зависимости на Homestead включват в себе си прости графични инсталатори за всички популярни операционни системи. Вижте документацията на Homestead, за да започнете.

Маршрутизиране

За да започнем, нека създадем първия си маршрут. В Laravel най-простият път е път до затворено място. Отворете app/routes.php файла и добавете следния маршрут в долната част на файла:

Сега, ако заредите /users маршрута във вашия уеб браузър, трябва да видите, че се Users! показан като отговор.

Маршрутите могат да бъдат прикачени към класовете на контролера. Например:

Този маршрут информира рамката, че заявките към /users маршрута трябва да извикват getIndex метода в UserController класа. За повече информация относно маршрутизирането на контролера, вижте документацията на контролера.

Създаване на изглед

След това ще създадем прост изглед за показване на потребителските ни данни. Изгледите са в app/views директорията и съдържат HTML кода на вашето приложение. Ще поставим два нови изгледа в тази директория: layout.blade.php и users.blade.php. Първо, нека създадем нашия layout.blade.php файл:

След това ще създадем нашия users.blade.php изглед:

Този синтаксис вероятно ви изглежда доста странен. Това е така, защото използваме системата за шаблони на Laravel: Blade. Blade е много бърз защото е просто шепа регулярни изрази, които се изпълняват относно вашите шаблони, като така се компилират в чист PHP. Blade предоставя мощна функционалност като наследяване на шаблон, както и някои захаросан синтаксис за типичните PHP контролни структури като if и for. Вижте документацията за Blade за повече подробности.

Сега, когато имаме своите възгледи, нека се върнем на нашия маршрут /users. Вместо да се връща Users! от маршрута, може да върнете изгледа:

Създаване на миграция

За да създадем таблица за съхранение на нашите данни, ще използваме системата за миграция Laravel. Миграциите ви позволяват експресивно да дефинирате модификации на вашата база данни и лесно да ги споделяте с останалата част от вашия екип.

Първо, нека конфигурираме връзка с база данни. Можете да конфигурирате всички връзки към вашата база данни от app/config/database.php файла. По подразбиране Laravel е конфигуриран да използва MySQL и ще трябва да предоставите идентификационни данни за връзка в конфигурационния файл на базата данни. Ако желаете, можете да промените driver опцията на sqlite и тя ще използва базата данни SQLite, включена в app/database директорията.

След това, за да създадем миграцията, ще използваме Artisan CLI . От корена на вашия проект изпълнете следното от вашия терминал:

php artisan migrate:make create_users_table

След това намерете генерирания файл за миграция в app/database/migrations папката. Този файл съдържа клас с два метода: up и down. В up метода трябва да направите желаните промени в таблиците на вашата база данни и в down метода просто да ги обърнете.

Нека дефинираме миграция, която изглежда така:

След това можем да стартираме нашите миграции от нашия терминал с помощта на migrate командата. Просто изпълнете тази команда от корена на вашия проект:

php artisan migrate

Ако искате да върнете миграцията назад, можете да издадете migrate:rollback командата. Сега, когато имаме таблица с база данни, нека започнем да изтегляме някои данни!

Eloquent ORM

Laravel пристига с превъзходен ORM: Eloquent. Ако сте използвали рамката Ruby on Rails, ще намерите Eloquent за познат, тъй като той следва стила на ActiveRecord ORM за взаимодействие с база данни.

Първо, нека дефинираме модел. Моделът Eloquent може да се използва за заявка на свързана таблица на базата данни, както и да представлява даден ред в тази таблица. Не се притеснявайте, всичко ще сдобие смисъл скоро! Моделите обикновено се съхраняват в app/models директорията. Нека дефинираме User.php модел в тази директория по следния начин:

Имайте предвид, че не е нужно да казваме на Eloquent коя таблица да използва. Eloquent има различни конвенции, една от които е да се използва формата за множествено число на името на модела като таблица на базата данни на модела. Удобно е!

Използвайки предпочитания от вас инструмент за администриране на база данни, вмъкнете няколко реда в users таблицата си и ние ще използваме Eloquent, за да ги извлечем и да ги изведем в нашия изглед.

Сега нека модифицираме нашия /users маршрут, за да изглежда така:

Нека да преминем през този маршрут. Първо, all методът на User модела ще извлече всички редове в users таблицата. След това предаваме тези записи на изгледа чрез with метода. В with метода се приемат ключ и стойност, и се използват за направата на част от данните за достъпни за оглед.

Показване на данни

След като направихме users достъпни за нашия изглед, можем да ги покажем така:

Може би се чудите къде да намерите нашите echo изявления. Когато използвате Blade, можете да повторите данните, като ги обградите с двойни къдрави скоби. Сега бихте могли да ударите /users маршрута и да видите имената на вашите потребители, показани в отговора.

Това е само началото. В този урок сте видели самите основи на Laravel, но има още много вълнуващи неща, които можете да научите. Продължете да четете документацията и се задълбочете в мощните функции, достъпни за вас в Eloquent and Blade . Или може би се интересувате повече от опашки и тестване на единици. Тогава отново, може би искате да разгънете архитектурните си мускули с IoC контейнера.

Внедряване на вашето приложение

Една от целите на Laravel е да направи приложението на PHP приятно за използване от изтеглянето до внедряването, а Laravel Forge предоставя лесен начин за разполагане на вашите Laravel приложения върху бързи сървъри. Forge може да конфигурира и предоставя сървъри на DigitalOcean, Linode, Rackspace и Amazon EC2. Подобно на Homestead, всички най-нови екстри са включени: Nginx, PHP 5.6, MySQL, Postgres, Redis, Memcached и др. Forge „Quick Deploy“ може дори да внедри вашия код за вас всеки път, когато изпратите промените в GitHub или Bitbucket!

На всичкото отгоре Forge може да ви помогне да конфигурирате работници на опашки, SSL, Cron работни места, поддомейни и др. За повече информация посетете уебсайта Forge .