我最近重新安装了 Lumen 框架,并开始用它构建一个站点。是的,我知道 lumen 仅适用于 API,但请帮我解决这个问题。
我已将所有视图放在/resources/views中,并将我的模板放在/resources/views/templates中。
现在,因为我必须将[css/js/images]放在某个地方,所以我认为将所有这些都放在public/assets/[css/js/images]中会很好。
现在在我的布局中,当我尝试包含 css - 我使用这样的东西 -
<link href="{{ url('assets/css/something.css') }}">
它可以提供类似这样的输出 -
<link href="localhost/assets/css/something.css">
同样的事情也适用于 js,但是当我尝试包含图像时它会变得很奇怪。为了包含一张图片,我写了一些类似的东西 -
<img src ="{{ url('assets/images/someimage.jpg') }}"
当我查看页面源代码时,输出与我预期的一样 -
<img src="localhost/assets/images/someimage.jpg">
但是我的控制台会触发 404 not found 错误,说明找不到 someimage.jpg。当我通过检查图像的父级进行交叉检查时,Url 完全不同,就像这样 -
<img src="localhost/images/someimage.jpg">
看,自动从图像 url 中省略“资产”并导致 404,但是当我查看页面源时我可以看到正确的 url。
我试图解决这个问题的事情 -
清除缓存并重新加载页面。
尝试使用asset()而不是url(),但它的原型已从流明中删除。
从资产中拉出 [css/js/images] 文件夹并将它们粘贴到父级即公共中。这行得通,但问题是为什么以前的设置对 css 和 js 都有效,并且只对图像造成了问题?
我的其他问题是——
1. 页面源中的 url 与正在呈现的 url 有何不同?仅提及在我的情况下,页面源中的 url 工作并显示图像,但由于 url 被渲染,因此从路径中省略了“资产”,因此导致 404。
2.有没有其他好的方法可以将这些资产包含在视图中。如果是,那么还请提及将它们放在哪里?
附上一些图像/代码以供参考。