【问题标题】:Laravel route with attribute to a function具有函数属性的 Laravel 路由
【发布时间】:2012-10-31 04:45:25
【问题描述】:

这可能是一个非常简单的。

我有一个索引函数,它可以根据传递给它的可选参数列出所有内容或特定项目。

我有控制器的这条路线:

Route::controller('movies/(:any)');

我想将它重定向到带有参数的电影索引函数。 我不希望人们必须输入: www.site.com/movies/index/2 但反而 www.site.com/movies/2

我已经尝试在 any 数组中使用问号和“闭包”函数(我认为这是正确的术语)来允许我重定向。

关闭尝试如下所示:

Route::controller('movies/(:any?)',function($id){
    return Redirect::to("movie/index/$id");
});

这给了我一个 404 错误。 我做得对吗?

【问题讨论】:

    标签: redirect routing laravel


    【解决方案1】:

    你不想在你的路线上区分它,让控制器决定做什么。

    您的路线:

    Route::get('movies/(:any)', 'movies@index');
    

    你的控制器:

    class Movies_Controller extends Base_Controller {
    
        public $restful = true; // i have this line on my Base_Controller
    
        function get_index($id = null)
        {
            if( ! is_null($id))
            {
                // return the movie
            }
    
            // return all movies
        }
    }
    

    【讨论】:

    • 就是这样。没想到你可以这样走。您也不必将 RESTful 声明为 true。感谢您的帮助。
    猜你喜欢
    • 2013-11-02
    • 2014-04-15
    • 2015-07-19
    • 2014-10-18
    • 1970-01-01
    • 1970-01-01
    • 2019-06-19
    • 2020-04-15
    • 2018-12-31
    相关资源
    最近更新 更多