Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带斜线的Laravel可选参数_Laravel - Fatal编程技术网

带斜线的Laravel可选参数

带斜线的Laravel可选参数,laravel,Laravel,创建一条具有可选参数的laravel路线时遇到问题。以下是我想要的行为: Route::get('/{locale}/donate', 'MyController@index')->name('donation.index'); Route::get('/donate', 'MyController@index')->name('donation.index'); URL/fr/denate和/denate都将加载MyController索引()。但是,当我这样做时: Route:

创建一条具有可选参数的laravel路线时遇到问题。以下是我想要的行为:

Route::get('/{locale}/donate', 'MyController@index')->name('donation.index');
Route::get('/donate', 'MyController@index')->name('donation.index');
URL
/fr/denate
/denate
都将加载
MyController索引()。但是,当我这样做时:

Route::get('/{locale?}/donate', 'MyController@index')->name('donation.index');

/generate
将不会加载
MyController索引()
。如何使
locale
参数成为url中的可选段?

可选参数只能位于url的末尾

Route::get('/donate/{locale?}', 'MyController@index')->name('donation.index');

在我看来,没有办法将参数定义为可选参数。以下是解决您的问题的其他方法

首先

Create a subdomain for that
Second将可选参数移到最后一个。现在,您的路线将如下所示

Route::get('/donate/{locale?}', 'MyController@index')->name('donation.index');

这回答了你的问题吗?