我的laravel应用程序有一个模型 - 视频。它是主要模型,因此路线被命名为视频。但在开发之后,我发现生产服务器上有一个名为 videos
的文件夹所以现在重写url以在.htaccess中包含index.php不起作用。
我无法更改已存在的视频文件夹的名称。 我也无法更改db表名。我不想这样做,太多的工作。 有没有办法将路线名称改为lvideos或vvideos等其他东西? 我尝试在路线中更改它,但似乎还有其他地方我必须改变它。它在控制器中抛出了一个错误。 有人可以为此提出解决方案吗?
我不想将index.php的链接提供给用户
谢谢。
答案 0 :(得分:0)
您必须在引用的任何地方更改路线。
将来如果您认为路线可能会发生变化,您可以使用命名路线,然后在需要使用它的地方引用路线名称。
例如:
Route::group(['prefix' => 'videos'], function() {
Route::get('/', [
'uses' => 'VideosController@index',
'as' => 'videos.index',
]);
Route::get('{id}', [
'uses' => 'VideosController@show',
'as' => 'videos.show',
]);
});
然后,无论您在哪里使用这些路线,都可以使用名称,例如在视图中:
<a href="{{ route('videos.index') }}">Videos</a>
即使您将路线更改为Route::group(['prefix => 'iVideos']);
,该链接仍然有效。即使路线发生变化,名称也没有。