Php 如何在Laravel中设置默认控制器?

Php 如何在Laravel中设置默认控制器?,php,laravel,laravel-routing,Php,Laravel,Laravel Routing,我正在使用Laravel PHP框架,我想知道一些事情。默认的application/routes.php文件包含以下内容: Route::get('/', function() { return View::make('home.index'); }); 这只是输出视图,但是如何从那里调用控制器 我可以删除上面的整个路由,并将其替换为route::controller('home'),它似乎在默认URL(即example.com/)上使用主控制器。但是像Route::controll

我正在使用Laravel PHP框架,我想知道一些事情。默认的
application/routes.php
文件包含以下内容:

Route::get('/', function()
{
    return View::make('home.index');
});
这只是输出视图,但是如何从那里调用控制器


我可以删除上面的整个路由,并将其替换为
route::controller('home')
,它似乎在默认URL(即
example.com/
)上使用主控制器。但是像
Route::controller('article')
这样的任何其他控制器都不起作用,只在
example.com/article
上起作用。如何将项目控制器设置为默认值?

只需将控制器作为字符串传递,在类名和方法名之间使用
@

Route::get('/', 'article@index');
阅读(通过标题滚动到示例,注册指向控制器操作的路由。

该“
/
”是特殊位置,您可以通过
路由::get(“/”,”进行设置home@index)

对于home controller上的所有其他操作,您将拥有URL,例如“
/home/action1
”或“
/home/action2

我只是想让您明白,将任何控制器分配给“
/
”都没有好处,也没有必要


我希望我的回答清楚。同样,这不是对您的问题的尝试性回答,而是对您的一个建议,如果您被困在路线处理中。我正处于你几天前的那个阶段:)

谢谢,不知怎的,我错过了这一页。但是
家庭
的事情呢?是
Route::get('/','home@index)
Route::controller('home')相同。
?@不满意OAT-不<代码>路由::获取('/','home@index“)
将仅注册索引方法,并且仅在
/
路由上注册
Route::controller('home')
将注册其所有方法,并映射到各自的URL。后者将如何工作?如果您将整个控制器注册到
/
,则
/example
不会在主控制器上名为“example”的控制器与“example”方法之间变得模棱两可。您无法将整个控制器注册到
/
。要注册路由,请注册一个特定方法。如果要注册整个控制器,请使用
Route::controller('controller_name')
。我的意思是,如果使用
Route::controller('home')
注册主控制器,它将成为
/
上的默认控制器(除非已经指定了
/
)。或者至少,home controller的索引方法已经注册了。这是一篇老文章,但它是Google中排名最高的文章之一,因此我对此发表评论。如果有人发现这一点,当您设置Route::controller(“/”,“controller”)时,会中断所有其他链接,这就是为什么对控制器路由使用默认“/”不是一个好主意