使用 laravel 5.2 调用未定义的函数 Form()


Call to undefined function Form() using laravel 5.2

当我转到我的视图时,发生以下错误:

9edd5e400844b5418c6227c302e89f04657fb615.php第 3 行中的致命错误异常: 调用未定义的函数 Form()

我的视图文件 :

{!!Form::open(array('url'=>'resetpwd','method'=>'PUT')) ;!!}
 <p>{!!Form(password('password'));!!}</p>
 {!!$errors->first('password');!!}
 {!!Form::hidden('code',$code);!!}
 <p> {!!Form::submit('Reset Passsword');!!} </p>
 {!!Form::close();!!}
 {!!$errors->first('reseterror');!!}

我假设你已经安装了Laravel Recepie。您没有正确声明Form::password()方法。使用以下更改编辑您的代码,希望对您有所帮助。了解如何在 Laravel Recepie 中使用此方法。
{!!Form(password('password'));!!}更改为{!!Form::password('password');!!}

表单不是核心组件的一部分,因此您需要将其添加到 laravel。为此,您需要编辑在 laravel 主目录中找到的 composer.json 文件。更改此行

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

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

然后在终端中运行composer update。它将添加包括表单在内的所有集合。

接下来,您必须将新提供程序添加到 config/app.php 的提供程序数组中。

您可以在您的应用程序中找到它.php

 'providers' => [
        /*
         * Laravel Framework Service Providers...
         */
        Illuminate'Auth'AuthServiceProvider::class,
        Illuminate'Broadcasting'BroadcastServiceProvider::class,
        Illuminate'Bus'BusServiceProvider::class,
        Illuminate'Cache'CacheServiceProvider::class,
        Illuminate'Foundation'Providers'ConsoleSupportServiceProvider::class,
        ....................

需要添加行Collective'Html'HtmlServiceProvider::class,SO 将提供商更改为

Illuminate'Auth'AuthServiceProvider::class,
        Illuminate'Broadcasting'BroadcastServiceProvider::class,
        Illuminate'Bus'BusServiceProvider::class,
        Illuminate'Cache'CacheServiceProvider::class,
        Illuminate'Foundation'Providers'ConsoleSupportServiceProvider::class,
        Collective'Html'HtmlServiceProvider::class, ....

最后一步是将两个类别名添加到 config/app 的别名数组中.php

 'aliases' => [
        'App' => Illuminate'Support'Facades'App::class,
        'Artisan' => Illuminate'Support'Facades'Artisan::class,
        'Auth' => Illuminate'Support'Facades'Auth::class,...

添加额外的两个类表单,HTML 那里

 'App' => Illuminate'Support'Facades'App::class,
    'Artisan' => Illuminate'Support'Facades'Artisan::class,
    'Auth' => Illuminate'Support'Facades'Auth::class,
    'Form' => Collective'Html'FormFacade::class,
    'Html' => Collective'Html'HtmlFacade::class,...

现在,您可以在 laravel 中使用该表单。

参考: https://laravelcollective.com/docs/5.2/html