通过浏览器无法看到laravel 5控制器

时间:2014-10-28 07:18:18

标签: php laravel laravel-5

我知道laravel 5尚未出现并处于开发阶段,但我一直在玩它以尝试了解它是如何工作的。使用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';
    }

}

in

app/Providers/RouteServiceProviders.php 

这一行

require app_path('Http/routes.php');

被注释掉了。所以我只是取消注释并将其放入我的routes.php

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

它仍然无法正常工作。

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

您应该在此处提供解决方案,并提供参考链接,而不仅仅是链接:

来自Laracast forum

  

您需要指定完整路径:

App\Http\Controllers\HomeController
  

要么是这样,要么在RouteServiceProvider部分添加一个名称空间,你需要routes.php - 就像这样:

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