【发布时间】:2019-12-08 20:57:35
【问题描述】:
我在我的网站管理员中制作了一些定制页面,并将它们作为 URL 的第一段。
例如
/property-hartlepool
我想在我的路由文件中添加一个陷阱所有路由:
Route::get('{any?}', 'PagesController@view');
我遇到的问题是它完全覆盖了我的其他路线,我猜这是一个陷阱所有路线的名称。但是,如果找不到匹配项,我希望它跳过。
我有一条管理员路线
/管理员
但现在它会抛出 404 错误...
我的 PagesController@view 方法是:
public function view(Request $request)
{
$route = $request->segment(1); // $request->path();
// get page content
$page = Page::where('route', $route)->firstOrFail();
// If not full width, get four latest properties
//$properties = Property::latest_properties_for_frontend();
//metadata
$meta = get_metadata($page);
//page is Temporary
return view('frontend.'.themeOptions().'.page', [
'route' => $route,
'meta' => $meta,
'page' => $page
]);
}
他们这样做是不是更好的方法,我确实有其他路线也位于“顶级”级别。比如……
Route::get('/property/{property}/{propertyId}', 'PropertiesController@property');
【问题讨论】:
标签: laravel