php - Laravel 5 类 'form' 未找到

标签 php laravel composer-php

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

  - Installing illuminate/html (v5.0.0)
    Loading from cache

我在网站的根目录中运行了这个命令。我在/root/.composer... 和项目的根目录中修改了 composer.json 文件,但都没有改变。

这下载了类并且它似乎安装了。我已将以下内容添加到文件 config/app.php.

    'Illuminate\Html\HtmlServiceProvider',

    'Form'      => 'Illuminate\Html\FormFacade',
    'Html'      => 'Illuminate\Html\HtmlFacade',

我想我知道出了什么问题,但我不知道如何解决它。我的安装在“/var/www/website”中。我检查了文件路径,Html文件夹不存在。

"/var/www/website/vendor/laravel/framework/src/Illuminate/Html"

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

"/var/www/website/vendor/illuminate/html"

我手动将文件复制到 Laravel illuminate/html 主文件夹,但这也不起作用。

最佳答案

Form 不像 4.0 那样包含在 laravel 5.0 中,包含它的步骤:

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

"require": {
    "laravelcollective/html": "~5.0"
}

接下来,从终端更新 composer:

composer update

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

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

最后在config/app.phpaliases数组中添加两个类别名:

'aliases' => [
// ...
  'Form' => 'Collective\Html\FormFacade',
  'Html' => 'Collective\Html\HtmlFacade',
// ...
],

此时,Form应该可以工作了

Source


更新 Laravel 5.8(2019-04-05):

Laravel 5.8中,config/app.php中的providers可以声明为:

Collective\Html\HtmlServiceProvider::class,

代替:

'Collective\Html\HtmlServiceProvider',

别名的表示法相同。

关于php - Laravel 5 类 'form' 未找到,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28753767/

相关文章:

php - Laravel 更新/安装 composer 包

php - 如何将 Laravel 中的文件直接上传到公用文件夹?

javascript - 展开 div 到 "read more"

php/mysql 更新不起作用

php - Laravel Eloquent 计算

php - 与 Composer 一起检索 fork

git - 使用 composer install 时重置 GitHub 登录

php - PHP 套接字是进行基于 PHP jQuery 的聊天的可行选项吗?

php - PDO 连接被 laravel 拒绝,但不被 $con = new PDO() 拒绝

php - 正确的组所有权和对 vagrant 上 Laravel 应用程序/存储文件夹的权限?