laravel 5中的加载控制器
我正在研究基于laravel 5的应用程序。 我希望我的网页url是任何东西,并根据控制器管理不同的页面,我通过cms控制面板附加了这些控制器。
在我的routes.php文件的文件我也有这样的代码laravel 5中的加载控制器
Route::get('{slug}/{params?}', 'site\[email protected]')->where('params', '(.*)');
我PagesController看起来像这样
<?php namespace App\Http\Controllers\site;
use App\Http\Controllers\Controller;
use App\Pages;
class PagesController extends Controller {
public function getPage($slug, $params = null)
{
if($params)
{
// dd($params);
}
$page = PAGES::whereSlug('/'.$slug)->first();
if(count($page)) {
\App::make('App\Http\Controllers\site\\'.$page->controller)->show($page->id);
}
else {
\App::abort(404);
}
}
}
它的工作时,我倾倒从所谓的控制器方法的数据(节目) ,但该方法不返回该值。例如,如果我执行dd($ item),它会显示正确的数据,但返回$ item不起作用。 有什么问题?
你一个更好的解决方案建议将高度赞赏也:)
谢谢!
所以,你应该返回值:)
return \App::make(…);
顺便说一句。 \App::abort(404);
可以通过别名来代替:abort(404);
而对于'\ APP ::让(” ...‘)'有'应用程序(’... ')';) – lukasgeiter 2015-04-06 13:54:17
非常感谢! :)) – SomethingElse 2015-04-06 13:56:21
@MariG不客气! – 2015-04-06 13:57:35
如果你满意我的回答你能接受它:) – 2015-04-06 14:08:34