php – 在Laravel 5中为现有URL添加前缀

问题:我正在我的Web应用程序中实现本地化功能,但是应用程序处于开发中期,因此不要重写< form action =“”>中的所有链接.和< a href =“”>我需要一个解决方案,只需在/ en /或/ es /等所有其他路由之前添加前缀tu URL,但该应用程序会将/ localhost / en /视为localhost /.

要清除像< a href =“/ admin”>这样的链接正如http://localhost/admin所宣传的那样,我需要它像http://localhost/en/admin一样工作

我不知道哪些代码是任何帮助,所以我会根据请求添加代码.

route.php看起来像这样

<?php

Route::get('/','HomeController@index');
Route::get('admin/blocks/{size}',"AdminController@getBlocks");
Route::get('admin/del-block/{id}',"AdminController@getDelBlock");


Route::controllers([
    'admin' => 'AdminController','auth' => 'Auth\AuthController','password' => 'Auth\PasswordController','products' => 'ProductsController'
]);
Route::get('/{slug}',"HomeController@getPage");
Route::get('/{slug}/{subslug}',"HomeController@getPage");

在视图中我手动生成URL

<a href="/admin/blocks{{$block->size}}">Link</a>
<form action="/products/new" > </form>

解决方法

如果您希望http:// localhost / admin和http:// localhost / en / admin由相同的控制器处理,那么您需要在routes.php中编写2组路由.

这种方式有两个完全相同的应用程序逻辑的入口点.

非本地化网址的第一个入口点:/ admin.第二个将采用参数:{lang} / admin.

相关文章

laravel的dd函数不生效怎么办
看不懂laravel文档咋办
安装laravel框架出现command怎么办
Laravel开发API怎么使用事务
laravel怎么构建复杂查询条件
laravel如何实现防止被下载