laravel collectiveを使ってみよう

パッケージというと、centOSのrpmや、npmのnode moduleのようなイメージでしょうか?
「laravel illuminate/html」で検索します

github:https://github.com/illuminate/html

https://laravelcollective.com/docs/5.2/html
なんじゃこりゃーー

composer.json
requireにインストールするパッケージ名を追加します。

"require": {
        "php": ">=5.5.9",
        "laravel/framework": "5.2.*",
        "laravelcollective/html":"^5.2.0"
    },

$ php composer.phar update

./config/app.php
provider

'providers' => [
    // ...
    Collective\Html\HtmlServiceProvider::class,
    // ...
  ],

aliases

'aliases' => [
 // ...
 'Form' => Collective\Html\FormFacade::class,
 'Html' => Collective\Html\HtmlFacade::class,
 // ...
],

あ、aliasesは普段使用しているclass名です
ここで引っ張て来てるんですね

view: create.blade.php
{!! Form::open() !!}と記載する

<h1>Create Post</h1>
	<!-- <form method="post" action="/posts"> -->
	{!! Form::open() !!}
		{{ csrf_field()}}
		<input type="text" name="title" placeholder="Enter tilte">
		<input type="submit" name="submit">
	</form>

methodを記入

{!! Form::open(['method'=>'POST', 'action'=>'PostsController@store']) !!}
		{{ csrf_field()}}
		<input type="text" name="title" placeholder="Enter tilte">
		<input type="submit" name="submit">
	{!! Form::close() !!}

更に、text form、submit buttonもcollectiveを使用

{!! Form::open(['method'=>'POST', 'action'=>'PostsController@store']) !!}
		{{ csrf_field()}}

		<div class="form-group">
			{!! Form::label('title', 'Title') !!}
			{!! Form::text('title', null, ['class'=>'form-controll']) !!}
		</div>

		<div class="form-group">
			{{ Form::submit('Create Post', ['class'=>'btn btn-primary'])}}

		</div>
	{!! Form::close() !!}

edit & delete

@section('content')

	<h1>Edit Posts</h1>
	{!! Form::model($post, ['method'=>'PATCH', 'action'=>['PostsController@update', $post->id]]) !!}
		{{ csrf_field()}}

		<div class="form-group">
		{!! Form::label('title', 'Title') !!}
		{!! Form::text('title', null, ['class'=>'form-controll']) !!}

		{!! Form::submit('Update Post', ['class'=>'btn btn-info']) !!}
		</div>
	{!! Form::close() !!}

	{!! Form::open(['method'=>'DELETE', 'action'=>['PostsController@destroy', $post->id]]) !!}
		{{ csrf_field()}}

		<div class="form-group">
		{!! Form::submit('DELETE', ['class'=>'btn btn-danger']) !!}
		</div>
	{!! Form::close() !!}

@endsection

HTMLのformとは異なるので、使いこなすには練習・復習が必要です。