未找到Laravel 5 Class'form'

Dan*_*ngs 62 php laravel composer-php

我已经将"illuminate/html":"5.*"添加到composer.json并运行"composer update".

  - Installing illuminate/html (v5.0.0)
    Loading from cache
Run Code Online (Sandbox Code Playgroud)

我在网站的根目录中运行了此命令.我在/root/.composer ..和项目的根目录中修改了composer.json文件,但两者都没有区别.

这下载了这个类,似乎安装了.我在config/app.php中添加了以下内容

    'Illuminate\Html\HtmlServiceProvider', 

    'Form'      => 'Illuminate\Html\FormFacade',
    'Html'      => 'Illuminate\Html\HtmlFacade',
Run Code Online (Sandbox Code Playgroud)

我想我知道什么是错的,但我不知道如何解决它.我的安装位于'/ var/www/website'.我检查了文件路径,Html文件夹不存在.

"/var/www/website/vendor/laravel/framework/src/Illuminate/Html"
Run Code Online (Sandbox Code Playgroud)

我能够找到类文件,但在不同的目录中.

"/var/www/website/vendor/illuminate/html"
Run Code Online (Sandbox Code Playgroud)

我手动将文件复制到主laravel illuminate/html文件夹,但这也没有用.

Ped*_*ito 84

Form不包含在laravel 5.0中,因为它是4.0,包含它的步骤:

首先安装laravelcollective/htmlComposer.编辑项目的composer.json文件以要求:

"require": {
    "laravelcollective/html": "~5.0"
}
Run Code Online (Sandbox Code Playgroud)

接下来,composer从终端更新:

composer update
Run Code Online (Sandbox Code Playgroud)

接下来,将新提供程序添加到以下providers数组中config/app.php:

'providers' => [
  // ...
  'Collective\Html\HtmlServiceProvider',
  // ...
],
Run Code Online (Sandbox Code Playgroud)

最后,在以下aliases数组中添加两个类别名config/app.php:

'aliases' => [
// ...
  'Form' => 'Collective\Html\FormFacade',
  'Html' => 'Collective\Html\HtmlFacade',
// ...
],
Run Code Online (Sandbox Code Playgroud)

此时,Form应该正常工作

SRC:

https://laravelcollective.com/docs/5.0/html

  • SRC链接已更新.https://laravelcollective.com/docs/5.3/html从5.0到5.3,他们更改了提供程序和别名部分.Collective\Html\HtmlServiceProvider :: class,用于提供者,然后是'Form'=> Collective\Html\FormFacade :: class,'Html'=> Collective\Html\HtmlFacade :: class,用于别名. (2认同)

mha*_*n01 43

这可能不是您正在寻找的答案,但我建议使用现在社区维护的存储库Laravel Collective Forms和HTML作为主要存储库已被弃用.

  • 他们似乎想让它更轻巧,让人们只在他们需要时添加东西. (4认同)
  • 链接无效,未指定输入文件。 (3认同)

use*_*864 23

您还可以尝试在终端或命令中运行以下命令:
1.composer dump-autocomposer dump-auto -o
2. php artisan cache:clear
3.php artisan config:clear

以上对我有用


Ahm*_*oud 16

只需在项目目录的终端中键入以下命令,然后根据laravel版本进行安装:

composer require "laravelcollective/html"
Run Code Online (Sandbox Code Playgroud)

然后添加这些行 config/app.php

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

'aliases' => [
    // ...
   'Form' => Collective\Html\FormFacade::class,
   'Html' => Collective\Html\HtmlFacade::class,
    // ...
],
Run Code Online (Sandbox Code Playgroud)


jes*_*er3 13

Laravel 5.2对此进行了更新.请注意,这与上面指出的格式略有不同.

首先通过Composer安装此软件包.编辑项目的composer.json文件以要求laravelcollective/html.

"require": {
    "laravelcollective/html": "5.2.*"
}
Run Code Online (Sandbox Code Playgroud)

接下来,从终端更新Composer:

composer update
Run Code Online (Sandbox Code Playgroud)

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

  'providers' => [
    // ...
    Collective\Html\HtmlServiceProvider::class,
    // ...
  ],
Run Code Online (Sandbox Code Playgroud)

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

  'aliases' => [
    // ...
      'Form' => Collective\Html\FormFacade::class,
      'Html' => Collective\Html\HtmlFacade::class,
    // ...
  ],
Run Code Online (Sandbox Code Playgroud)

进行此更新后,此代码在Laravel 5.2的新安装上为我工作:

{!! Form::open(array('url' => 'foo/bar')) !!}
    //
{!! Form::close() !!}
Run Code Online (Sandbox Code Playgroud)

我在这里得到了这些信息:https://laravelcollective.com/docs/5.2/html


Rah*_*ham 5

首先通过Composer安装此软件包。从终端运行以下命令:

composer require "laravelcollective/html":"^5.3.0"
Run Code Online (Sandbox Code Playgroud)

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

'providers' => [
    // ...
    Collective\Html\HtmlServiceProvider::class,
    // ...
  ],
Run Code Online (Sandbox Code Playgroud)

最后,将两个类别名添加到config / app.php的aliases数组中:

'aliases' => [
    // ...
      'Form' => Collective\Html\FormFacade::class,
      'Html' => Collective\Html\HtmlFacade::class,
    // ...
  ],
Run Code Online (Sandbox Code Playgroud)

SRC:

https://laravelcollective.com/docs/5.3/html