簡體   English   中英

Laravel:如何在 {{ }} 內實現 if 語句

[英]Laravel: How to implement if statement within {{ }}

在各種情況下,我不得不在我的 laravel 應用程序的鏈接中傳遞搜索過濾器。 以下語句在 laravel 4 中運行良好,但現在我將其轉換為 laravel 8 並且它現在給我錯誤。

{{ link_to_route('workprocess.edit', 'Edit Work Process', array($workprocess->id, json_encode($searchFilters)), array('class' => 'btn btn-sm btn-warning')) }}

錯誤

Missing required parameters for [Route: workprocess.edit] [URI: workprocess/edit/{workprocess}/{search?}]. (View: D:\xampp\htdocs\compliance.local\resources\views\home.blade.php)

原因$searchFilters 有時是空的,因為同樣的模板也被用於搜索。 $searchFilters = array('fromdate' => '', 'todate' => '', 'name' => '', 'type' => '');

我想在 {{ }} 中為json_encode($searchFilters)放置一個 if 語句,這樣我就不必為兩個鏈接編寫代碼,因為還有很多其他此類事件。

這將是我的解決方案;

$searchFilters 設置的位置:

if (empty($searchfilters)) {
    $searchfilters = 1;
};

並在json_encode方法中添加一個三元組:

json_encode(empty($searchFilters)?= 1: $searchFilters; '');

您可以使用簡寫形式添加一個 if 語句,例如:

{{ $var === "hello" ? "Hi" : "Goodbye" }}

暫無
暫無

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

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