php Laravel ~ 属性【控制器】不存在
Posted
技术标签:
【中文标题】php Laravel ~ 属性【控制器】不存在【英文标题】:php Laravel ~ Attribute [controller] does not exist 【发布时间】:2017-09-20 05:20:46 【问题描述】:我正在尝试在我的 Laravel 项目中设置路由控制器,并且我已经设置了控制器和路由。
但是,当我在web.php
中加载路由时,当我尝试在Attribute [controller] does not exist
的浏览器中导航到该页面时会产生错误
这是代码..
<?php
namespace CMS\Http\Controllers\Auth;
use CMS\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
class LoginController extends Controller
use AuthenticatesUsers
logout as performLogout;
/**
* Where to redirect users after login.
*
*/
protected $redirectTo;
/**
* Create a new controller instance.
*
*/
public function __construct()
$this->redirectTo = route('backend.dashboard');
$this->middleware('guest')->except('logout');
public function logout(Request $request)
$this->performLogout($request);
return redirect()->route('auth.login');
然后在 web.php 我有这个...
Route::controller('auth', 'Auth\LoginController', [
'getLogin' => 'auth.login'
]);
【问题讨论】:
Route::controller('auth', 'Auth.LoginController', ['getLogin' => 'auth.login' ]); ------>> 试试这个 @RïshïKêshKümar 不幸的是,这不起作用 控制器方法自 Laravel 5.3 起已弃用。但是现在,您可以使用资源方法,其目的与控制器方法相同:... Like This :: Route::resource('datatables', 'HomeController'); 现在我收到 show() 不存在的错误。 您还必须根据您的路线更改路线..您更改它.. 【参考方案1】:控制器方法自 Laravel 5.3 起已弃用。但是现在,您可以使用资源方法,这与控制器方法的用途相同。
像这样:
Route::resource('auth', 'LoginController');
或
Route::get('/auth','LoginController');
Route::post('/auth','LoginController');
【讨论】:
在 laravel 5.2 中,控制器方法正在工作,现在通过在 laravel 5.4 中使用控制器方法,它给出了相同的属性控制器错误。谢谢你的回答。以上是关于php Laravel ~ 属性【控制器】不存在的主要内容,如果未能解决你的问题,请参考以下文章
通过控制器助手授权:方法 authorize() 不存在 - Laravel 5.5