This is just a random list of notes, as I dig into Laravel 4. If you have any feedback/solutions, please leave a comment. I'll be compiling everything for an article on Nettuts+, when the framework is officially in Beta. This will be updated over the course of the week.
-
Running
composer dump-autoload
after every new controller is a pain. Can this not be automated throughartisan controller:make ControllerName
? -
Seems that some of the View HTML helpers are missing. No
HTML::script()
. -
Route::resource('tasks', 'TasksController')
doesn't seem to create named routes. This is a big deal, if not. What's the solution? -
If you come from the Rails-flavor of REST, it'll take some re-tooling to learn the new RESTful method names. PHP can't use names, like "new," so that can be confusing. "create" is used instead.
-
Routing wildcards are different in L4. Rather than
(:num)
or(:any)
, you can name them.Route::get('tasks/{id}');
. Much better. -
A lot of the helpers are missing. I guess I see why that was done, but I'll likely end up implementing the most used ones on my own (
dd()
, etc.) -
Why does Laravel 4 now require me to specify the table name in my models? Why not use a natural default so that I can type less - such as the plural form of the class name?
-
return Task::all()
will now return a JSON representation, which is super helpful. It makes building RESTful APIs along with something like Backbone as easy as possible. -
artisan key:generate
doesn't seem to be currently available.
$this->layout is not longer available in controllers - I really liked this for loading templates because I could just specify the default template in a BaseController and then override in specific controllers or functions as needed. It may be possible to replicate this in L4 by overriding
protected function processResponse()
in controller.php. Are there any other alternatives?