如何使用 laravel 路由提供包含非刀片(Html)的文件夹? [复制]
Posted
技术标签:
【中文标题】如何使用 laravel 路由提供包含非刀片(Html)的文件夹? [复制]【英文标题】:How to serve a folder containing non-blade (Html) with laravel routes? [duplicate] 【发布时间】:2022-01-05 20:14:04 【问题描述】:我可以在 Laravel 的 public
文件夹中提供 html 文件和文件夹。
但我想将它们用作视图并将它们呈现为视图,
所以我可以在它们上使用身份验证和授权中间件。
如果它们是很多文件,我不想为每个文件写很多路由。
【问题讨论】:
@manjkiran appathurai :它没有,因为它不能帮助我不为分层结构编写分层路由 【参考方案1】:解决方案是在resources/views
下创建静态资产
喜欢resources/views/static
。
例如:
resources/views/static/foo.html
resources/views/static/bar/baz.html
之后我可以在我的路由文件中放置一个类似通配符的路由,
然后强制视图引擎接受 html
扩展,并像刀片层次结构一样转换 url 层次结构
Route::get('/pages/url?', function ($url)
View::addExtension('html', 'php');
$viewPath = str_replace(DIRECTORY_SEPARATOR, '.', pathinfo($url, PATHINFO_DIRNAME)) . '.'.pathinfo($url, PATHINFO_FILENAME);
return View::make('static.'. $viewPath);
)->where('url', '(.*)');
【讨论】:
以上是关于如何使用 laravel 路由提供包含非刀片(Html)的文件夹? [复制]的主要内容,如果未能解决你的问题,请参考以下文章