PHPackages                             blainesch/laravel-pretty-controller - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. blainesch/laravel-pretty-controller

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

blainesch/laravel-pretty-controller
===================================

0.0.1(11y ago)2411PHPPHP &gt;=5.4.0

Since Jun 9Pushed 10y agoCompare

[ Source](https://github.com/blainesch/laravel-pretty-controller)[ Packagist](https://packagist.org/packages/blainesch/laravel-pretty-controller)[ RSS](/packages/blainesch-laravel-pretty-controller/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (2)Used By (0)

What?
-----

[](#what)

[![Build Status](https://camo.githubusercontent.com/659035c56303167d5e482e394b09e0568acf008d293c5c7ed5cb20374f0d1c39/68747470733a2f2f7472617669732d63692e6f72672f626c61696e657363682f6c61726176656c2d7072657474792d636f6e74726f6c6c65722e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/blainesch/laravel-pretty-controller)

This library provides helpful content negotiations. For instance if you ask for json back from a typical laravel website you'd still get html back. I carefully look at the `Accept` header and `type` (`.json` for instance) to best determine what media type to render.

What does this mean? It means your controller actions are cleaner, all you do is return values!

```
class UserController extends BaseController {
	public function show()
	{
		return View::make('user.show')->with([
			'name' => 'BlaineSch',
		]);
	}
}
```

Now, let's respond to multiple content types and prettify our controller!

```
class UserController extends BaseController {
	public function showAction()
	{
		return ['name' => 'blainesch'];
	}
}
```

Installation
------------

[](#installation)

### Composer

[](#composer)

```
'require': {
	"blainesch/laravel-pretty-controller": "0.0.1"
}
```

### Update `Controller` and add `CoreController` values in your `app/config/app.php` file.

[](#update-controller-and-add-corecontroller-values-in-your-appconfigappphp-file)

```
'aliases' => [
	// ...
	'Controller'      => 'Blainesch\LaravelPrettyController\Action\PrettyController',
	'CoreController'  => 'Illuminate\Routing\Controller',
	// ...
]
```

### Register your media types

[](#register-your-media-types)

Create a `bootstrap/media.php`

```
