2017-07-14 6 views
0

Ich bin neu in Laravel und ich versuche, eine Ansicht in Acelle (App basierend auf Laravel) zu erstellen. Ich lese viele Tutorials, aber ich hatte kein Glück mit diesem Problem.Ich kann keine Ansicht in Laravel erstellen

ich die Ansicht erstellt "lol.blade.php" auf/resources/Ansichten Ordner mit diesem Code:

HELLO (just hello) 

Die Route:

Route::get('lol', function() 
{ 
    if (view()->exists('lol')) { 
     //return 'helloooo'; <--- it works 
     return view('lol'); 
    } else { 
     return 'not exists';  
    } 
}); 

Der Code der Ansicht existiert weiß, aber Die URL (localhost/azelle/public/lol) druckt diese Nachricht:

"Whoops, sieht aus wie etwas falsch gelaufen ist."

Ich kann das Problem mit Tutorials nicht lösen. Ich habe alle Schritte zum Erstellen von Ansichten in Laravel verfolgt, aber ich weiß nicht, warum die Ansicht diese Nachricht druckt.

Bitte helfen!

PS: Laravel Version: 5.2.45

EDIT: In Konsole [network] zeigt Error 500. und laravel.log druckt 59 Zeilen. aber die erste Zeile zeigt: [2017-07-14 14:08:20] production.ERROR: ErrorException: Undefinierter Index: Controller in/home/acelle/public_html/acelle/app/Anbieter/AppServiceProv ider.php: 20

+1

'Hoppla, sieht aus wie etwas schief ging 'ist __insufficient__ Beschreibung. Antwort auf Ihre Frage in diesem Fall ist "etwas reparieren". –

+0

können Sie Ihren Debug-Stack veröffentlichen. sollte genau unter dieser "Whoops" -Nachricht sein. – xperator

+0

Und wenn es nicht gleich darunter ist, schalten Sie 'APP_DEBUG' in Ihrer' .env' Datei auf 'true'. – ceejayoz

Antwort

0

Sie gepostet in den Kommentaren:

app('view')->composer('*', function ($view) { 
    $action = app('request')->route()->getAction(); 
    $controller = class_basename($action['controller']); 
    list($controller, $action) = explode('@', $controller); 
    $view->with(compact('controller', 'action')); 
}); 

Ihr Problem ist, dass diese Route verwendet einen Schließung und hat keine Controller:

Route::get('lol', function() {}); 

Daher existiert $action['controller'] nicht und gibt eine Warnung als Ergebnis aus. Sie sollten isset($action['controller']) überprüfen, bevor Sie den Rest Ihres Codes ausführen, der die Controller-Variable verwendet.

+0

Ich löste es mit einem Controller. danke – Nicomuniz

+0

Froh, dass ich helfen konnte, @Nicomuniz. – ceejayoz

0

Bereits gelöst !!

SOLUTION:

einen Controller zu erstellen: MiwebController.php

<? 
namespace Acelle\Http\Controllers; 

class MiwebController extends Controller 
{ 
    public function __construct() 
    { 
     parent::__construct(); 
     $this->middleware('auth'); 
    } 

    public function index() 
    { 
     return view('lol'); 
    } 
} 
?> 

routes.php:

Route::get('lol', '[email protected]'); 

Es funktioniert gut. Vielen Dank!

Verwandte Themen