【问题标题】:Laravelcollective/html not working in Laravel 5.5Laravelcollective/html 在 Laravel 5.5 中不起作用
【发布时间】:2020-01-08 18:53:09
【问题描述】:

我尝试通过在我的composer.json 文件中加载 v5.4 来在 laravel 5.5 上使用 Laravelcollective/html,但这没有用。这是composer.json文件中的代码:

"laravelcollective/html":"^5.4.0",

并将其加载到我的应用配置文件app.php:在 providers 数组中

Collective\Html\HtmlServiceProvider::class,

但是在我使用刀片代码创建表单后它不起作用,这是刀片代码。

{!! Form::open(['route' => 'posts.store']) !!}

{{Form::label('title','Title:')}}

{{Form::text('title', null, array('class' => 'form-control') )}}

{!! Form::close() !!}

【问题讨论】:

    标签: php laravel laravel-5.5


    【解决方案1】:

    通过终端/CMD 安装laravelcollective/html

    composer require laravelcollective/html:^5.5.0
    

    app/config/app.php 中,添加以下内容:

    'providers' => [
        // ...,
        Collective\Html\HtmlServiceProvider::class,
        // ...
    ],
    
    'aliases' => [
        // ...,
        'Form' => Collective\Html\FormFacade::class,
        'Html' => Collective\Html\HtmlFacade::class,
        // ...
    ],
    

    在你的刀片文件中:

    {!! Form::open(['route' => 'posts.store']) !!}
    {!! Form::label('title', 'Title:') !!}
    {!! Form::text('title', null, array('class' => 'form-control')) !!}
    {!! Form::close() !!}
    

    【讨论】:

    • composer install 将查看 composer.lock 文件,composer update 将更新所有包,而不仅仅是 laravelcollective/html 包。
    • 您好,谢谢。安装所有软件包有什么问题?它只在开发环境中完成还是什么?
    • 这意味着所有引用的包都将被更新。你会得到一个新版本的 laravel/framework 以及 laravel/framework 引用的所有 20 个包。这意味着您将突然获得最新的 Carbon 版本,该版本仅因为您想生成一些 html 表单而严重损坏。要点是;它会更新您不希望更新的软件包。 github.com/briannesbitt/Carbon/issues/863
    • 哦东西:O 我怎样才能一次只安装一个包,然后我会更新我的答案?我可以谷歌它,但我相信下一个人也可以从中学习。 :)
    • composer require laravelcollective/html:^5.4.0
    【解决方案2】:

    你可以使用这个命令

    composer require --update-with-all-dependencies "laravelcollective/html 5.6.*"... since you are using laravel 5.5 the command to use will be 
    composer require "laravelcollective/html 5.5.*"
    

    【讨论】:

      【解决方案3】:

      您还必须将以下内容添加到您的别名数组中:

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

      ],

      【讨论】:

        【解决方案4】:

        您使用的语法是旧式的。

        {{Form::label('title','Title:')}} 
        

        应该是的

        {!! Form::label('title','Title:') !!}
        

        【讨论】:

          【解决方案5】:

          你也可以在 laravel 5.5 中做到这一点。 第 1 步:从命令安装:composer require "laravelcollective/html":"^5.5"

          第 2 步:安装后,您必须在 config/app.php 文件中添加提供程序和别名,所以让我们按照下面的文件如何添加。

          步骤 2.1:

          <?php
          
          'providers' => [
          
              // ...
          
              Collective\Html\HtmlServiceProvider::class,
          
              // ...
          
            ],
          
          'aliases' => [
          
              // ...
          
                'Form' => Collective\Html\FormFacade::class,
          
                'Html' => Collective\Html\HtmlFacade::class,
          
              // ...
          
            ],
          

          第 3 步:添加上述提供程序后,您必须检查您的项目。

          第 4 步:完成。

          谢谢。

          【讨论】:

            【解决方案6】:

            简单的使用这个:

            composer require laravelcollective/html
            

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2017-04-09
              • 1970-01-01
              • 2018-05-26
              • 2018-02-27
              • 1970-01-01
              • 1970-01-01
              • 2018-09-03
              • 1970-01-01
              相关资源
              最近更新 更多