这里是关于最佳实践的,我的操作路由到控制器的方法:
Route::get('/admin',array('before' => 'auth', 'uses' => 'PostController@create' ));
In PostController@create:
public function create(){
// Querying Model
return Redirect::action('PictureController@index');
}
因为我需要,显示表单创建一个帖子,得到所有的图片存储在数据库中(这是服务器上的一个文件,位于一个'url'字段在图片数据库表),所以管理员可以为他的帖子选择一个图片。
所以在PictureController的index方法结束时,我可以返回我需要的所有数据的视图,所以我的问题是:
是否有一种方法可以将视图响应从路由中分离出来,例如在我路由到我的几个控制器的动作后使用闭包,或者我必须在执行中最后调用的方法中返回视图?
很抱歉我的英语不好,希望我的问题足够清楚。
你可以创建一个这样的过滤器:
Route::filter('name_of_filter', function($response, $type = 'html')
{
//do your magic
});
在filters.php
中做一些处理在之后的所有控制器的工作。
在你的路由中,使用Route::get/('/admin', array('after' => 'name_of_filter', 'uses' => ...))
在你的请求的末尾应用这个过滤器