簡體   English   中英

我如何將額外的參數傳遞給laravel中的控制器

[英]how can I pass an extra parameter to a controller in laravel

我有這個:

Route::get('/product/{id}', 'PagesController@display');

在我的PagesController中,我有這個:

public function display($id) {
    return View::make("details", ["id" => $id, "premium" => $premium]);
}

如何在不將變量$premium 插入url的情況下將其傳遞給controller方法? 簡而言之,我不希望這樣: www.mysite.com/product/false/125false$premium的值),而是這樣: www.mysite.com/product/125 這就是為什么我在controller方法中僅將$id作為參數,而沒有$premium 我想以其他方式傳遞該變量$premium

我已經嘗試過一些類似的方法:

Route::get('/product/{id}', 'PagesController@display')->where("premium" => "false");

這沒有用。

您可以使用關閉路線並“手動”調用操作:

Route::get('/product/{id}', function($id){
    return app('PagesController')->callAction('display', [$id, false]);
});

public function display($id, $premium) {
    return View::make("details", ["id" => $id, "premium" => $premium]);
}

暫無
暫無

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

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