Состоялся долгожданный релиз четвертой версии замечательного фреймворка.
Также обновился официальный сайт.
Для установки Laravel, скачать копию репозитория с Github.
Далее, после установки Composer, запускаем
для всех роутов начинающихся на /admin/
Теперь определим роут с параметром
Laravel сам загрузит модель
Ресурс контроллеры позволяют легко создавать RESTful контроллеры. К примеру, вам может понадобиться создать контроллер который управляет «фотками» в вашем приложении. Используя
Чтобы создать контроллер из под консоли, выполнить следующую команду:
Теперь мы можем определить ресурс роут:
Одно определение роута может обрабатывать множество разных RESTful действий нашего photo ресурса.
Действия обрабатываемые ресурс контроллером
Назначение контроллера роуту
Если действие вашего контроллера содержит несколько слов, вы можете обращаться к ним через «тире» в URI. К примеру, текущее действие контроллера
Фасады предоставляют «статический» интерфейс к классам которые доступны через IoC контейнер. Laravel использует фасады повсеместно, и вы можете использовать их даже не зная об этом.
Например, реализация класса
Однако, если заглянуть в класс
Класс Cache наследуется от
Альтернативная реализация
Если заинтересовало, можно пройти по ссылочкам.
Документация
Быстрый Старт
Github
Также обновился официальный сайт.
Быстрая установка
Для установки Laravel, скачать копию репозитория с Github.
Далее, после установки Composer, запускаем
composer install
команду в корневой папке. Composer скачает и установит все зависимости.Мини обзор
Роутинг
Субдомены
Route::group(array('domain' => '{account}.myapp.com'), function()
{
Route::get('user/{id}', function($account, $id)
{
//
});
});
Префиксы
для всех роутов начинающихся на /admin/
Route::group(array('prefix' => 'admin'), function()
{
Route::get('user', function()
{
//
});
});
Присвоение модели к параметру роута
Route::model('user', 'User');
Теперь определим роут с параметром
{user}
Route::get('profile/{user}', function(User $user)
{
//
});
Laravel сам загрузит модель
User
по pkКонтроллеры
Ресурс контроллеры
Ресурс контроллеры позволяют легко создавать RESTful контроллеры. К примеру, вам может понадобиться создать контроллер который управляет «фотками» в вашем приложении. Используя
controller:make
через Artisan CLIЧтобы создать контроллер из под консоли, выполнить следующую команду:
php artisan controller:make PhotoController
Теперь мы можем определить ресурс роут:
Route::resource('photo', 'PhotoController');
Одно определение роута может обрабатывать множество разных RESTful действий нашего photo ресурса.
Действия обрабатываемые ресурс контроллером
Тип | Путь | Действие | Роут |
GET | /resource | index | resource.index |
GET | /resource/create | create | resource.create |
POST | /resource | store | resource.store |
GET | /resource/{id} | show | resource.show |
GET | /resource/{id}/edit | edit | resource.edit |
PUT/PATCH | /resource/{id} | update | resource.update |
DELETE | /resource/{id} | destroy | resource.destroy |
Rest контроллеры
Назначение контроллера роуту
Route::controller('users', 'UserController');
controller
метод принимает два аргумента. Первый — базовый URI который обрабатывает контроллер, а второй имя класса контроллера. Далее, просто добавим методы в контроллере, с префиксом соответствующим типу HTTP:class UserController extends BaseController {
//GET /user/index
public function getIndex()
{
//
}
//POST /user/profile
public function postProfile()
{
//
}
}
Если действие вашего контроллера содержит несколько слов, вы можете обращаться к ним через «тире» в URI. К примеру, текущее действие контроллера
UserController
будет обрабатывать users/admin-profile
URI:public function getAdminProfile() {}
Фасад
Фасады предоставляют «статический» интерфейс к классам которые доступны через IoC контейнер. Laravel использует фасады повсеместно, и вы можете использовать их даже не зная об этом.
Например, реализация класса
Cache
$value = Cache::get('key');
Однако, если заглянуть в класс
Illuminate\Support\Facades\Cache
, вы заметите что там нет метода get
class Cache extends Facade {
/**
* Get the registered name of the component.
*
* @return string
*/
protected static function getFacadeAccessor() { return 'cache'; }
}
Класс Cache наследуется от
Facade
класса, и определяет метод getFacadeAccessor()
который возвращает имя ключа в IoC контейнере.Альтернативная реализация
Cache::get
без использования фасада$value = $app->make('cache')->get('key');
Если заинтересовало, можно пройти по ссылочкам.
Документация
Быстрый Старт
Github