【表单】illuminate/html与laravelcollective/html【原创】

本文介绍illuminate/html与laravelcollective/html两个Laravel表单生成库的使用方法,包括依赖引入、配置注册及视图引用等步骤,并强调了在Laravel 5.0以上版本中使用laravelcollective/html替代illuminate/html的重要性。

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

【表单】illuminate/html与laravelcollective/html【原创】

illuminate/html 与laravelcollective/html 库的作用是:快速通过普通的 form 标签创建表单

illuminate/html 使用步骤(5.0以上已弃用)

1. 引入依赖

1
composer require illuminate/html
或者是composer.json的require里面加上:
"illuminate/html": "版本号"

而版本号的话通过命令查询:

            
1
composer show -all illuminate/html

2. 修改app.php

修改 config/app.php 文件:
在  providers  字段中添加  HtmlServiceProvider  ,把库注册到 Laravel 中:
// 添加到 'Illuminate\View\ViewServiceProvider', 后面
Illuminate\Html\HtmlServiceProvider::class,

通过 aliases 字段为刚才注册的 Provider 设置别名:

           
1
// 添加到 'View'      => 'Illuminate\Support\Facades\View', 之后
2
'Form'      => Illuminate\Html\FormFacade::class,
3
'Html'      => Illuminate\Html\HtmlFacade::class,
设置别名后,在控制器中调用的时候就不需要输入 Facade 的完整名称,只需要使用别名即可。

3. 视图中引用

视图中通过以下的代码可以生成form标签:
{!! Form::open() !!}
{!! Form::close() !!}

比如:

           
1
@extends('main')
2

            
3
@section('content')
4
    <h1>Wirte a New Article</h1>
5

            
6
    <hr/>
7

            
8
    {!! Form::open() !!}
9

            
10
    {!! Form::close() !!}
11
@stop

4. 运行

运行之后页面没什么变化,但是源代码中会生成form标签:
<form method="POST" action="控制器的url" accept-charset="UTF-8"><input name="_token" type="hidden" value="随机字符串"></form>

模版中那一段代码会生成了一个 form 表单,mothod 默认为 POST,action 为当前RUL,并且生成了一个隐藏域 _token ,它可以让表单提交更加安全。

注意:

illuminate/html 在Laravel 5.0以上已经被弃用了,使用laravelcollective/html来替换。以后5.0以上的版本还是用illuminate/html的话会报错:



以下是 laravelcollective/html的使用步骤:

laravelcollective/html使用步骤

1. 引入依赖


             
1
composer require laravelcollective/html
或者是composer.json的require里面加上:
"laravelcollective/html": "版本号"

而版本号的话通过命令查询:

             
1
composer show -all illuminate/html

2. 修改app.php

修改 config/app.php 文件:
在  providers  字段中添加  HtmlServiceProvider  ,把库注册到 Laravel 中:
// 添加到 'Illuminate\View\ViewServiceProvider', 后面
Collective\Html\HtmlServiceProvider::class,

通过 aliases 字段为刚才注册的 Provider 设置别名:

            
1
// 添加到 'View'      => 'Illuminate\Support\Facades\View', 之后
2
'Form'      => Collective\Html\FormFacade::class,
3
'Html'      => Collective\Html\HtmlFacade::class,
设置别名后,在控制器中调用的时候就不需要输入 Facade 的完整名称,只需要使用别名即可。

3. 视图中引用

视图中通过以下的代码可以生成form标签:
{!! Form::open() !!}
{!! Form::close() !!}

比如:
1
@extends('main')
2

               
3
@section('content')
4
    <h1>Wirte a New Article</h1>
5

               
6
    <hr/>
7

               
8
    {!! Form::open() !!}
9

               
10
    {!! Form::close() !!}
11
@stop

4. 运行

运行之后 页面没什么变化,但是源代码 会生成form标签:
<form method="POST" action="控制器的url" accept-charset="UTF-8"><input name="_token" type="hidden" value="随机字符串"></form>

模版中那一段代码会生成了一个 form 表单,mothod 默认为 POST,action 为当前RUL,并且生成了一个隐藏域 _token ,它可以让表单提交更加安全。




posted @ 2017-07-14 22:03 Newman·Li 阅读( ...) 评论( ...) 编辑 收藏
报错提示 #78 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Livewire\\Features\\SupportDisablingBackButtonCache\\DisableBackButtonCacheMiddleware->handle() #79 /var/www/snipe-it/vendor/barryvdh/laravel-debugbar/src/Middleware/InjectDebugbar.php(59): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #80 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Barryvdh\\Debugbar\\Middleware\\InjectDebugbar->handle() #81 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #82 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Http\\Middleware\\HandleCors->handle() #83 /var/www/snipe-it/app/Http/Middleware/PreventBackHistory.php(23): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #84 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): App\\Http\\Middleware\\PreventBackHistory->handle() #85 /var/www/snipe-it/app/Http/Middleware/SecurityHeaders.php(26): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #86 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): App\\Http\\Middleware\\SecurityHeaders->handle() #87 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #88 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(51): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() #89 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\TrimStrings->handle() #90 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #91 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle() #92 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\ConvertEmptyStringsToNull->handle() #93 /var/www/snipe-it/app/Http/Middleware/CheckForDebug.php(25): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #94 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): App\\Http\\Middleware\\CheckForDebug->handle() #95 /var/www/snipe-it/app/Http/Middleware/CheckForSetup.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #96 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): App\\Http\\Middleware\\CheckForSetup->handle() #97 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #98 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle() #99 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #100 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\\Session\\Middleware\\StartSession->handleStatefulRequest() #101 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Session\\Middleware\\StartSession->handle() #102 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(110): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #103 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance->handle() #104 /var/www/snipe-it/app/Http/Middleware/NoSessionStore.php(28): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #105 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): App\\Http\\Middleware\\NoSessionStore->handle() #106 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(58): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #107 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(209): Illuminate\\Http\\Middleware\\TrustProxies->handle() #108 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(127): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}() #109 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(176): Illuminate\\Pipeline\\Pipeline->then() #110 /var/www/snipe-it/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(145): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter() #111 /var/www/snipe-it/public/index.php(51): Illuminate\\Foundation\\Http\\Kernel->handle() #112 {main}
最新发布
06-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值