簡體   English   中英

Laravel / Voyager 中的條件面包

[英]Conditional BREAD in Laravel / Voyager

有沒有辦法對 Voyager's BREAD 顯示的記錄列表應用某些條件? 例如,只顯示某一WHERE 'col_name' IS NULL空的記錄(即WHERE 'col_name' IS NULL )?

更新 (17/12/18):


您可以覆蓋控制器並添加 where 子句。 例如,如果您需要覆蓋“帖子”列表,那么您應該:

  1. 制作一個自定義的 PostController: php artisan make:controller PostController
  2. 從 Voyager BREAD 控制器擴展它: class PostController extends \\TCG\\Voyager\\Http\\Controllers\\VoyagerBaseController
  3. 導入 Voyager 的 Facade: use TCG\\Voyager\\Facades\\Voyager;
  4. 從 VoyagerBaseController 復制整個索引函數。 您可以在\\vendor\\tcg\\Voyager\\Http\\Controllers\\VoyagerBaseController找到它
  5. 覆蓋它以添加您需要的任何邏輯或過濾器,例如:

$dataType = Voyager::model('DataType') ->where('slug', '=', $slug) ->where('col_name', '=', NULL) ->first();

您還可以在同一函數中設置$orderBy = 'col_name'$sortOrder = 'asc'/'desc'自定義值。 這里是航海者的文檔。

老的:


就在這里。 您需要編輯視圖並應用條件過濾器。 這里解釋了如何覆蓋視圖(如果你想在將數據發送到視圖之前過濾它,還有控制器)。

只需在您的模型中定義一個范圍:

public function scopeMyScope($query)
{
    return $query->where('col_name', null);
}

然后轉到 Bread Form 並從 Scope 下拉菜單中選擇它 :)

暫無
暫無

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

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