此链接表明该/app
目录包含所有配置、模板(.html.twig
文件)和翻译,并且该/src
目录包含 PHP 代码。
但是,在这里我们可以看到 .css 和 .js 文件是从/src/AppBundle/Resources/public
目录加载的,而不是从目录加载的/app/Resources/public
。最佳做法是什么?我应该如何专业地解决这个问题,我应该将所有模板.js
和.css
文件保存在哪里?
我喜欢将用于一般用途的 css 和 javascript/app/Resources/public
放在/src/YourBundleNameBundle/Resources/public
. 就像那样,当我想查看特定于捆绑包的代码时,我只会去那个捆绑包,当它是通用代码时,我会确定它在根目录中。我见过专家这样做,这对我来说很有意义。
这是一个选择问题,没有正确和错误的答案。
最好的做法是将你的 css 和 js 文件放在你的包中,特别是放在你称为“公共”的文件夹中(yourBundle/Ressources/public/css/yourStyle.css),并确保在之前运行此命令
php bin/console assets:install
并且为了避免每次都输入此命令,我建议您通过添加 active 参数来创建一个链接(一种快捷方式):
assets:install --symlink
所以,web /bundles/folderBundle 实际上指向 src/yourBundle/Resources/public
在 Windows 上,您必须以管理员模式运行命令提示符