- Инсталация
- Местна среда за развитие
- Маршрутизиране
- Създаване на изглед
- Създаване на миграция
- Красноречив ORM
- Показване на данни
- Внедряване на вашето приложение
Инсталация
Чрез 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
се съдържат папки, като например views
, controllers
и 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 .