trupedia/laravel-blade-haml
最新稳定版本:1.0.0
Composer 安装命令:
composer require trupedia/laravel-blade-haml
包简介
Wraps MtHaml for ease use in Laravel 5 with Blade syntax style
README 文档
README
A small package that adds support for compiling Blade Style Haml templates to Laravel 5 via MtHaml.
Installation
-
Add it to your composer.json (
"trupedia/laravel-blade-haml": "~1.0") and do a composer install. -
Add the service provider to your app.php config file providers:
'trupedia\LaravelBladeHaml\LaravelBladeHamlServiceProvider',
Configuration
You can set MtHaml environment, options, and filters manually. To do so, publish the config file with php artisan vendor:publish and edit it at /config/blade-haml.php. For instance, to turn off auto-escaping:
'mthaml' => array(
'environment' => 'php',
'options' => array(
'enable_escaper' => false,
),
'filters' => array(),
),
Usage
Laravel-Blade-Haml registers the ".haml.php" extension with Laravel and forwards compile requests on to MtHaml. It compiles your Haml templates in the same way as Blade templates; the compiled template is put in app/storage/views. Thus, you don't suffer compile times on every page load.
In other words, just put your Haml files in the regular resources/views directory and name them like "resources/views/home/whatever.haml.php". You reference them in Laravel like normal: view('home.whatever').
The Haml view files can work side-by-side with regular PHP views.
The Blade Syntax for a sample login view:
@extends('layouts.master')
@section('content')
<div class="row">
<div class="col-md-4 col-md-offset-4">
@include('layouts.partials.errors')
<h1>Sign In!</h1>
{!! Form::open(['route' => 'login']) !!}
<div class="form-group">
{!! Form::label('email', 'E-Mail:') !!}
{!! Form::text('email', null, ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::label('password', 'Password:') !!}
{!! Form::password('password', ['class' => 'form-control']) !!}
</div>
<div class="form-group">
{!! Form::submit('Sign In', ['class' => 'btn btn-primary']) !!}
</div>
{!! Form::close() !!}
</div>
</div>
@stop
becomes now with Laravel-Blade-Haml:
@extends('layouts.master')
@section('content')
.row
.col-md-4.col-md-offset-4
@include('layouts.partials.errors')
%h1 Sign In!
{!! Form::open(['route' => 'login']) !!}
.form-group
{!! Form::label('email', 'E-Mail:') !!}
{!! Form::text('email', null, ['class' => 'form-control']) !!}
.form-group
{!! Form::label('password', 'Password:') !!}
{!! Form::password('password', ['class' => 'form-control']) !!}
.form-group
{!! Form::submit('Sign In', ['class' => 'btn btn-primary']) !!}
{!! Form::close() !!}
@stop
pretty neat, isn't it? All the good Blade stuff is still available inside your new template files.
Contributions + Credits
Thanks Robert Reinhard for the initial source-code.
Release notes
- 1.0 - Initial Release
统计信息
- 总下载量: 3.83k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 16
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-03-30