2015-02-26 17 views
39

Ho aggiunto "illuminate/html": "5. *" a composer.json e ho eseguito "aggiornamento compositore".Laravel 5 Classe 'form' non trovato

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

Ho eseguito questo comando nella radice del sito Web. Ho modificato il file composer.json in /root/.composer .. e nella radice del progetto e nessuno dei due ha fatto la differenza.

Questo ha scaricato la classe e sembrava installare. Ho aggiunto quanto segue per config/app.php

'Illuminate\Html\HtmlServiceProvider', 

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

Credo di avere un'idea di ciò che è sbagliato, ma non so come risolvere il problema. La mia installazione è in '/ var/www/website'. Ho controllato il percorso del file e la cartella Html non esiste.

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

sono riuscito a trovare i file di classe ma in una directory diversa.

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

ho copiato manualmente i file verso il laravel principale illuminare cartella/html, ma questo non ha funzionato neanche.

risposta

34

Questa potrebbe non essere la risposta che stai cercando, ma ti consigliamo di utilizzare il repository aggiornato della community ora Laravel Collective Forms & HTML poiché i repository principali sono stati deprecati.

+0

Qualche idea sul motivo per cui questo è stato rimosso nella v5? – musicliftsme

+3

sembra che vogliano renderlo più leggero e consentire alle persone di aggiungere cose solo quando ne hanno bisogno. –

+0

L'hanno notato nella guida all'upgrade o da qualche altra parte? non l'ho visto – KeizerBridge

19

È inoltre possibile provare a eseguire i seguenti comandi nel Terminale o di comando:
1. composer dump-auto o composer dump-auto -o
2. php artisan cache:clear
3. php artisan config:clear

È possibile che questo ha funzionato per me

+0

Brilliant.Questo ha funzionato per me – RileyManda

48

Form isn' t incluso in laravel5.0 come era su 4.0, s teps per includerlo:

Iniziare installando questo pacchetto tramite Composer.Modificare il file del progetto composer.json per richiedere laravelcollective/html

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

successiva, aggiornare composer dal Terminal:

composer update 

Avanti, aggiungere il nuovo fornitore al providers gamma di config/app.php:

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

Infine, aggiungere due alias classe alla aliases array di config/app.php:

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

A questo punto, Form dovrebbe lavorare

SRC:

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

+1

Sì, questa è la soluzione. – zygimantus

+1

Il collegamento SRC è stato aggiornato. https://laravelcollective.com/docs/5.3/html Da 5.0 a 5.3 hanno modificato le sezioni dei provider e degli alias. Classe collettiva \ Html \ HtmlServiceProvider ::, per i provider e quindi 'Form' => Collettiva \ Html \ FormFacade :: classe e 'Html' => Collettiva \ Html \ HtmlFacade :: classe, per alias. – Marty

5

C'è un aggiornamento a questo per Laravel 5.2. Si noti che questo è un formato leggermente diverso da quello indicato sopra.

Iniziare installando questo pacchetto tramite Composer. Modifica il file composer.json del tuo progetto per richiedere laravelcollective/html.

"require": { 
    "laravelcollective/html": "5.2.*" 
} 

Prossimo, aggiornamento Composer dal Terminal:

aggiornamento compositore Avanti, aggiungere il nuovo provider per la matrice fornitori di config/app.php:

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

Infine, aggiungere due alias di classe alla matrice di alias config/app.php:

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

Af ter rendendo questo aggiornamento di questo codice ha funzionato per me su una nuova installazione di laravel 5.2:

{!! Form::open(array('url' => 'foo/bar')) !!} 
    // 
{!! Form::close() !!} 

ho ottenuto queste informazioni qui: https://laravelcollective.com/docs/5.2/html

0

Usa Form non form, i conteggi di capitalizzazione.

2

Iniziare installando questo pacchetto tramite Composer. Eseguire il seguente dal terminale:

composer require "laravelcollective/html":"^5.3.0" 

Avanti, aggiungere il nuovo provider per la matrice fornitori di config/app.php:

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

Infine, aggiungere due alias di classe alla matrice alias di config/app.php:

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

SRC:

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

+0

grazie la tua risposta è corretta - e pure –

+0

@ehsanwwe sei il benvenuto ... – Raham

0

In laravel Versione - 4, HTML & forma era esistito, ma non ora.

Perché:

L'unico motivo è che hanno raccolto alcune esigenze degli utenti e lo vogliono più leggera e quindi rimosso come questo senso che l'utente può aggiungere manualmente.

Cosa fare per aggiungere HTML & Forme in laravel 5.2 o 5.3:

Per 5.2:

Vai alle Laravel Collective site e installazione processi hanno dimostrato la loro.

Come per 5.2: in linea di comando eseguire il comando

composer require "laravelcollective/html":"^5.2.0" 

Poi, in fornitore serie che è in config/app.php. Aggiungere questa riga alla fine utilizzando una virgola (,)

Collective\Html\HtmlServiceProvider::class, 

Per uso HTML e sotto forma di testo abbiamo bisogno di loro in alias alias serie di config/app.php. Aggiungere la linea due all'ultimo

'Form' => Collective\Html\FormFacade::class, 
'Html' => Collective\Html\HtmlFacade::class, 

E per 5.3:

basta eseguire il comando

composer require "laravelcollective/html":"^5.3.0" 

E resto della procedura è come 5,2

Poi puoi usare Laravel Form e altri link HTML nei tuoi progetti. Per questo seguire questa documentazione:

5,2:https://laravelcollective.com/docs/5.2/html

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

Codice Demo: per aprire un modulo di apertura e chiusura tag:

{!! Form::open(['url' => 'foo/bar']) !!} 

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

E per la creazione di etichette e inserire il testo con una classe modulo di controllo bootstrap e altro uso:

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

E per di più, utilizzare la documentazione https://laravelcollective.com/

4
composer require "laravelcollective/html" 

basta digitare il seguente comando nel terminale a directory del progetto e l'installazione è fatto secondo la versione laravel e non dimenticate di aggiungere queste righe in app.php nella cartella config

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

],

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

],

+0

Penso che sia la migliore risposta –

0

ho provato di tutto, ma solo in questo aiutato:

php artisan route:clear 
php artisan cache:clear 
Problemi correlati