Laravel 5 中的控制器命名约定

Rob*_*bok 5 php model-view-controller laravel laravel-5

Laravel 5 中的所有控制器仍然以Controller后缀命名,例如AuthControllerPasswordController。是否有任何理由使用自己的控制器遵循此约定,或者这些后缀只是前命名空间时代的遗留物?

我大部分时间都使用基于操作的 URL 生成,因此我避免使用类似 的链接url('home'),但更喜欢类似的链接action('HomeController@index)。这样我就可以轻松地更改 URL 模式。

action('Home@index')要优雅得多。背后有什么陷阱吗?

Ama*_*san 4

无需添加Controller后缀。如果确实需要的话,当你通过 artisan 创建一个 Controller 时,它会自动添加它,或者抱怨它,但事实并非如此。所以,请随意(但请记住,如果您想要一个控制器“Dog”并且有一个模型“Dog”......那么,它会很复杂)。

  • 我认为它复杂的主要原因是`Dog`控制器通常需要`Dog`模型,所以如果你用`use`导入`Dog`模型,你必须给它起一个别名:`namespace Controllers; 使用 Models\Dog 作为 DogModel;class Dog 扩展了 Controller {}` 之类的东西。但是,是的,你可以做任何你想做的事。 (3认同)