簡體   English   中英

Laravel 中的多個 404 錯誤頁面 - 更改布局

[英]Multiple 404 error pages in Laravel - changing layout

我在一個站點中有多個設計,所以我需要做的是使用正確的設計模板提供特定頁面。 在這種情況下,我試圖為 404 提供正確的主布局。

我目前正在使用以下內容,但刀片中的 PHP 不是要走的路,所以我可能會迷路。

我抓住引用者,查找文件夾,並發布正確的布局:

$referer = Request::referer();

if (strpos($referer,'ext') !== false) {
   echo "@extends('layouts.ext_2.master')";
} else {
    echo "@extends('layouts.master')";
}

路線:

App::missing(function($exception) {
    return Response::view('error-404', array(), 404);
});

最好在控制器中處理這個問題並為每個條件返回不同的視圖:

$referer = Request::referer();

if (strpos($referer,'ext') !== false) {
   return view('layouts.ext_2.master');
} else {
    return view('layouts.master');
}

如果出於某種原因,您想在模板中包含條件邏輯,則可以將變量傳遞給視圖,我認為這樣更安全:

$referer = Request::referer();

$layout = (strpos($referer,'ext') ? 'layouts.ext_2.master' : 'layouts.master';

    return view('main.view', compact('layout'));
}

在視圖中:

@include($layout)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM