承接 trupedia/laravel-blade-haml 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

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

Total Downloads License

A small package that adds support for compiling Blade Style Haml templates to Laravel 5 via MtHaml.

Installation

  1. Add it to your composer.json ("trupedia/laravel-blade-haml": "~1.0") and do a composer install.

  2. 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

GitHub 信息

  • Stars: 15
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-03-30