[英]Laravel 7 "Class 'Form' not found"
我去上班了 Laravel! 当我输入我的代码时
{{ Form::token() }}
我收到消息“找不到‘表格’类”! 我去谷歌调查这个错误,但结果都是针对版本 4、5、6 的 laravel 版本 7 无处可去 这让我有点困惑,我无法定位自己! 请帮我!
创建.blade.php
@section ('content')
<form action="{{ URL::route('account-create-post') }}" method="post">
<input type="submit" value="Create Account">
{{ Form::token() }}
</form>
@stop
网页.php
Route::group(array('brefore' => 'guest'), function() {
Route::group(array('brefore' => 'csrf'), function(){
Route::post('/account/create',array(
'as' => 'account-create-post',
'uses' => 'AccountController@postcreate'
));
});
}
您可能会收到错误 Class 'Form' not found 的原因之一是您尚未在 config/app.php 上注册该表单。 如果你还没有注册,你应该注册它。 这是一个例子:
'aliases' => [
...
// others
'Form' => Collective\Html\FormFacade::class,
'Html' => Collective\Html\HtmlFacade::class,
],
如果您还没有安装,请安装并注册。 如果需要,您可以使用其他方法添加 csrf 令牌。 你可以像这样使用刀片
<form action="{{ URL::route('account-create-post') }}" method="post">
<input type="submit" value="Create Account">
@csrf
</form>
如果你只需要令牌,你可以像这样使用 csrf_token() 获得它:
<input type="hidden" name="_token" value="{{csrf_token()}}">
我收到消息“找不到‘表格’类”! 我去谷歌调查这个错误,但结果都是针对版本 4、5、6 的 laravel 版本 7 无处可去 这让我有点困惑,我无法定位自己!
不可以。您只能使用最大 Laravel 版本 4 的Form
类。
从 Laravel 5 开始不推荐使用Form
和HTML
助手。 但是,也有社区驱动的替代品,例如Laravel Collective维护的替代品。
任何时候在应用程序中定义 HTML 表单时,都应该在表单中包含一个隐藏的 CSRF 令牌字段,以便 CSRF 保护中间件可以验证请求。 您可以使用@csrf
Blade 指令生成令牌字段:
<form action="{{ route('account-create-post') }}" method="POST">
@csrf
...
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.