laravel中的表单Form的使用

来源:互联网 发布:大学生网购数据 编辑:程序博客网 时间:2024/06/07 19:17

以下内容安装是基于laravel 5.4(版本号不小于5.2)

1 安装illuminate/Form

composer require "laravelcollective/html":"^5.2.0"

可以直接安装

composer require "laravelcollective/html"

或者不添加双引号

composer require laravelcollective/html

2 配置illuminate/Form

在config/app.php文件中
providers添加Service Provider:

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

注意后面的逗号不能省略。

aliases中添加

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

3 打开Form(Opening A Form)

{!! Form::open(['url' => 'foo/bar']) !!}    //{!! Form::close() !!}

注意:

echo Form::open(['url' => 'foo/bar', 'method' => 'put'])

Form默认是POST方法,但是也可以重新定义。

Note:因为HTMLForms仅支持POST和GET,而使用PUT和DELETE时需要在form中增加使用_mothod隐藏字段。


可以在Form表单中使用路由或者控制器:

echo Form::open(['route' => 'route.name'])echo Form::open(['action' => 'Controller@method'])

也可以是实现参数传递

echo Form::open(['route' => ['route.name', $user]])echo Form::open(['action' => ['Controller@method', $user]])

如果窗体要接受文件上载,请向数组中添加文件选项:

echo Form::open(['url' => 'foo/bar', 'files' => true])

4 Form Model Binding

  1. Opening A Model Form
    使用Form::model填充表单
echo Form::model($user, ['route' => ['user.update', $user]])

注意:When using Form::model, be sure to close your form with Form::close!

参考:
https://laravelcollective.com/docs/5.2/html
http://www.jianshu.com/p/e00d9086aa2d


{!! Form::open(['url'=>'/articles']) !!} //指定文章上传路由 备注1    <div class="form-group"> //添加样式    {!! Form::label('title')!!}    {!! Form::text('title',null,['class'=>'form-control'}])!!} //添加样式    </div>{!! Form::close()!!}

备注1: 路由中的设置
“`
Route::post(‘/articles’,’ArticlesController@store’)

原创粉丝点击