我正在使用laravel 5.3并在web.php路由文件
中使用它Route::get('article/{key}', 'Website\WebsiteController@articles');
Route::get('contact/{key}', 'Website\WebsiteController@callUs');
并且在WebsiteController.php文件中我有这两个基金
public function articles($key) {
return 'article page';
}
public function callUs($key) {
return 'contact page';
}
问题是,对于文章(domain.com/articles/testing),它正确显示了返回文本,但是当我尝试联系页面(domain.com/contact/testing)时,我收到错误:
ReflectionException in Route.php line 333:
Method App\Http\Controllers\Website\WebsiteController::callUs() does not exist
两个路由都指向同一个控制器文件,并且两个函数都在同一个WebsiteController.php文件中,但是一个工作,另一个不工作。
如果我改变
Route::get('contact/{key}', 'Website\WebsiteController@callUs');
到
Route::get('contact/{key}', 'Website\WebsiteController@articles');
我的工作没有任何错误。知道这里出了什么问题吗?
II没有任何错误。知道这里出了什么问题吗?
更新:
WebsiteController.php
<?php
namespace App\Http\Controllers\Website;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Http\Requests;
class WebsiteController extends Controller {
public function articles($key) {
return 'article page';
}
public function contact($contactKey) {
return 'contact page';
}
}
web.php
<?php
Route::get('articles/{key}', 'Website\WebsiteController@articles');
Route::get('/contact/{key}', 'Website\WebsiteController@callUs');