2017-07-27 3 views
0

Ich bin ratlos. Ich arbeite daran, eine Anwendung auf Laravel 5.4 zu aktualisieren, aber auf dem Weg (5.2.45) habe ich etwas Seltsames mit mehreren Routen zu tun. Ich hatte 3 Route::controller() Anrufe in routes.php, und ich habe sie alle in explizite Routen umgewandelt, seit ::controller() gelöscht wurde. Jetzt funktionieren die neuen Routen von einem der ::controller() Anrufe gut, die Routen von den anderen beiden sind nicht, Meldung Aktion nicht gefunden.Controller-Aktionen in "Handwerker Route: Liste" als Closures

an Beispielen suchen, ist hier eine, die funktioniert:

\Route::get('account/edit', array('as'=>'account.edit', 'uses'=>'[email protected]')); 

und hier ist eine, die nicht ist:

\Route::get('recent/clear', array('as'=>'recent.clear', 'use'=>'[email protected]')); 

Der Vollständigkeit halber, hier sind die geltenden Steuerabschnitte

class AccountController extends Controller { 

    public function getEdit() 
    { 
     $roles = Role::getSelectList(); 
     $districts = District::getSelectList(); 
     return \View::make('accountedit', array('editUser' => \Auth::user(), 'roles'=>$roles, 'districts'=>$districts)); 
    } 
} 


class RecentController extends Controller { 

    public function getClear() 
    { 
     \Session::forget('recent'); 
     return \Redirect::to('/main')->with(array('alerts'=>array(ErrorHelper::alert('success','Success','The Recent list has been cleared.')))); 
    } 
} 

Das direkteste Zeichen, etwas komisches vor sich geht, ist, wenn ich artisan route:list laufen lasse. Hier sind die beiden geltenden Linien aus den Ergebnissen:

| Method | URI   | Name       | Action           | 
+-----------+---------------+---------------------------------+-------------------------------------------------+ 
| GET|HEAD | account/edit | account.edit     | App\Http\Controllers\[email protected] | 
| GET|HEAD | recent/clear | recent.clear     | Closure           | 

Ich habe keine Ahnung, warum recent.clear als Verschluss zeigt nach oben. Irgendwelche Gedanken, was falsch ist? FWIW, ich habe auf beiden Controllern identische Namespaces, die sich beide im Verzeichnis Http \ Controllers befinden.

Antwort

0

Oh verdammt, verwendet vs. verwenden. In den Worten von Grover, "Ich bin so peinlich ..."