【问题标题】:How to omit nested controller names of routes in Laravel 4?如何在 Laravel 4 中省略路由的嵌套控制器名称?
【发布时间】:2013-07-11 20:36:57
【问题描述】:

我使用嵌套控制器实现了以下路由结构

root/areas/eventID/titles/titlesID/sections/sectionsID

其中resourceID 是前一个控制器的 slug,areastitlessections 是控制器。

我希望我的 URL 结构为 root/eventID/titlesID/sectionsID,但我不确定如何在我的 routes.php 文件中实现这一点,因为我需要指定命名路由。到目前为止,我已经设置了这样的嵌套控制器:

Route::resource('areas','AreasController');
Route::resource('areas.titles','TitlesController');
Route::resource('areas.titles.sections','SectionsController');

有什么想法吗?

【问题讨论】:

  • 您可以添加如下路由:Route::get('{eventID}/{titlesID}/{sectionsID}', 'MyController@myMethod');

标签: laravel controllers


【解决方案1】:

您可以创建一个route with parameters

Route::resource('{eventID}/{titlesID}/{sectionsID}', 'MyController');

然后在您的MyController 中,您将拥有如下内容:

<?php

class AuthController extends BaseController {

    public function get()
    {
        // Your code...
    }

【讨论】:

  • 谢谢鲁本斯。让控制器嵌套是不必要的复杂化。
猜你喜欢
  • 2019-12-12
  • 2013-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-29
  • 1970-01-01
相关资源
最近更新 更多