laravel中的表单Form的使用

本文介绍了在laravel 5.4及以上版本中,如何安装并配置illuminate/Form库,详细讲解了如何打开表单、进行表单模型绑定,以及在表单中处理文件上传。同时提到了HTML Forms在处理PUT和DELETE请求时的注意事项,以及相关参考资料。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下内容安装是基于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’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值