【问题标题】:Laravel fixed parameter value to controller from routeLaravel 将参数值从路由固定到控制器
【发布时间】:2018-12-20 15:50:30
【问题描述】:

谁能告诉我为什么它不起作用?不返回任何内容。

路线:

Route::get('/terms/privacy/', [
    'uses'=>'contentController@dynamic',
    'urlkey'=>'privacy'
])->name('privacy');

内容控制器:

public function dynamic($urlkey){
  return $urlkey;
}

【问题讨论】:

  • urlkey 应该是什么?
  • 使用默认Route::get('/terms/privacy', ['uses'=>'contentController@dynamic'])->name('privacy')->default('urlkey', 'privacy');
  • 非常感谢@rkj 将其发布为答案!
  • @Vixed 我已经添加了答案,很高兴它工作愉快编码

标签: php laravel routes laravel-5.6


【解决方案1】:

您可以在 Laravel 中创建固定路由,使用 defaults 从控制器方法中指定参数。像这样

Route::get('/terms/privacy', ['uses'=>'contentController@dynamic'])->name('privacy')->defaults('urlkey', 'privacy');

你可以看看这个

Alias for a route with a fixed parameter value

【讨论】:

    【解决方案2】:

    您可以为函数参数定义默认值。

    Route::get('terms/privacy', function ($urlkey = 'YourValue') {
        return $urlkey;
    });
    //For Controller function 
    public function functionName($urlkey = 'test'){
      return $urlkey;
    }
    

    对于更新版本,您还具有默认功能

    Route::get('/terms/privacy', ['uses'=>'contentController@dynamic'])->name('privacy')->default('urlkey', 'privacy');
    

    【讨论】:

      猜你喜欢
      • 2021-01-28
      • 2019-07-10
      • 2015-07-08
      • 2019-06-18
      • 2017-05-14
      • 1970-01-01
      • 1970-01-01
      • 2013-06-02
      • 2020-09-01
      相关资源
      最近更新 更多