我刚刚重新安装了最新的Symfony版本。在我的templates
文件夹中,我创建了一个名为website的新文件夹,其中包含一个base.html.twig
和一个home.html.twig
。
文件结构:templates/website/base.html.twig
在我的public
目录中,我创建了以下css/app.css
。现在我已经完成了:
<link rel="stylesheet" href="{{ asset('css/app.css') }}" type="text/css">
在样式表中,我只是将主体背景色设置为红色,所以我知道它可以工作。无论出于什么原因,它都没有加载我的css。当我查看源代码时,它显示为:
<link rel="stylesheet" href="/css/app.css" type="text/css">
然后单击href我只得到一个Symfony404。我不知道为什么它没有加载我的静态CSS文件。
我不想使用Symfony Encore,因为那会使我的项目复杂化。我还尝试了assets:install
命令,但未安装或更改任何内容。
更新:
我安装了Symfony Encore并完成了基本设置,希望至少可以使用一些CSS。仍然会出现完全相同的问题。
答案 0 :(得分:0)
您应该将静态文件存储在项目根目录的assets
目录中。因此,只需将css
文件夹和app.css
文件放在<root>/assets/css/app.css
来源:https://symfony.com/doc/current/best_practices/web-assets.html
答案 1 :(得分:0)
如果要使用asset
功能,则必须首先使用以下命令安装组件:
composer require symfony/asset
如果您不希望使用webpack encore,那么实际上就是它的全部。
可选:如果您碰巧将PHPStorm与Symfony插件一起使用,请转至设置> symfony并将 Web目录从app
更改为{{1} },以获取Symfony 4使用的新目录。这为您提供了所有自动填充功能,您的引用也将可用。