Php 通过浏览器看不到laravel 5控制器

Php 通过浏览器看不到laravel 5控制器,php,laravel,laravel-5,Php,Laravel,Laravel 5,我知道Laravel5还没有推出,还处于开发阶段,但我一直在尝试和了解它是如何工作的。使用HomeController,我添加了另一个名为contact的方法,当我试图通过浏览器访问它时,它只显示404页面。我做错了什么?默认情况下,禁用路由,所有内容都通过控制器传递 http://domain.com/home/contact <?php namespace App\Http\Controllers; use Illuminate\Routing\Controller; class

我知道Laravel5还没有推出,还处于开发阶段,但我一直在尝试和了解它是如何工作的。使用HomeController,我添加了另一个名为contact的方法,当我试图通过浏览器访问它时,它只显示404页面。我做错了什么?默认情况下,禁用路由,所有内容都通过控制器传递

http://domain.com/home/contact

<?php namespace App\Http\Controllers;

use Illuminate\Routing\Controller;

class HomeController extends Controller
{
    public function index()
    {
        $data = array(
            'fname' => 'sarmen',
            'lname' => 'b'
        );

        return view('pages.home')->with('data', $data);
    }

    public function contact()
    {
        return 'contact us';
    }

}
这条线

require app_path('Http/routes.php');
被注释掉了。所以我只是取消了它的注释,并将其放入我的routes.php中

$router->get('contact', 'HomeController@contact');

但它仍然不起作用。

多亏了杰弗里·韦找到了解决方案


您应该将解决方案放在此处,并提供一个供参考的链接,而不仅仅是以下链接:

发件人:

您需要指定完整路径:

或者将名称空间添加到RouteServiceProvider部分,您需要routes.php,如下所示:

$router->get('contact', 'HomeController@contact');
App\Http\Controllers\HomeController
public function map(Router $router) {
    $router->group(['namespace' => $this->rootUrlNamespace], 
          function() use   ($router) {
             require app_path('Http/routes.php');
          });
}