Package Data | |
---|---|
Maintainer Username: | maddhatter |
Maintainer Contact: | shawn.tunney@gmail.com (Shawn Tunney) |
Package Create Date: | 2015-10-27 |
Package Last Update: | 2022-06-24 |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-24 15:05:11 |
Package Statistics | |
---|---|
Total Downloads: | 8,150 |
Monthly Downloads: | 95 |
Daily Downloads: | 1 |
Total Stars: | 14 |
Total Watchers: | 2 |
Total Forks: | 8 |
Total Open Issues: | 0 |
This is a tiny package to add a php artisan make:view
command to quickly create blade views.
Require the package with composer using the following command:
composer require maddhatter/laravel-view-generator --dev
Or add the following to your composer.json's require section and composer update
"require-dev": {
"maddhatter/laravel-view-generator": "dev-master"
}
Then register the service provider in your app/Providers/AppServiceProvider.php
to only be included for the local environment:
public function register()
{
if ($this->app->environment() == 'local') {
$this->app->register(\MaddHatter\ViewGenerator\ServiceProvider::class);
}
}
Or if you always want it included regardless of environment, just add it to the providers
array in config/app.php
php artisan make:view path.to.your.view
Use the same dotted notation to your view that you would pass to the view()
command. The directory will be created if it doesn't already exist.
Note: If there are multiple paths defined in your config/view.php
's paths
array, this package will use the first path.
php artisan make:view path.to.your.view -e path.to.parent.view
You can optionally extend another view by adding the -e
parameter and providing the name of the view you want to extend. It will parse the parent view for @yield()
directives and create the corresponding @section
/ @endsection
tags.
Imagine you have the following layout defined:
resources/views/layouts/master.blade.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
</head>
<body>
<div id="content">
@yield('content')
</div>
<script src="{{ elixir('js/app.js') }}"></script>
@yield('scripts')
</body>
</html>
And you run:
php artisan make:view pages.home -e layouts.master
The following will be created:
resources/views/pages/home.blade.php
@extends('layouts.master')
@section('content')
@endsection
@section('scripts')
@endsection