2014-10-28 70 views
0

我知道laravel 5尚未在开发阶段,但我一直在玩它试图了解它是如何工作的。使用HomeController,我添加了另一种称为联系人的方法,当我尝试通过浏览器访问它时,它只显示一个404页面。我究竟做错了什么?默认情况下,路由被禁用并且所有内容都通过控制器传递。laravel 5控制器通过浏览器不可见

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'; 
    } 

} 

app/Providers/RouteServiceProviders.php 

此线

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

被注释。所以我只是取消注释,并把它放到我的routes.php

$router->get('contact', '[email protected]'); 

它仍然不起作用。

回答

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'); 
      }); 
}