【发布时间】:2018-07-06 05:21:07
【问题描述】:
我想从我的树枝模板加载供应商资产,用供应商目录中的作曲家下载。
使用相对路径是一种解决方案(在此示例中,我将包含引导 css,但同样的问题适用于 composer 所需的任何其他库,如 jQuery、jQueryUI 等)
<link rel="stylesheet" href="{{ asset('../vendor/twbs/bootstrap/dist/css/bootstrap.min.css') }}" >
Symfony 文档建议使用 assets:install 来生成从供应商目录到公共目录的符号链接,但我无法理解它是如何工作的。 assets:install -h 不太清楚,无法让我了解如何将特定供应商路径链接到公共目录。
用
创建一个simlinkln -s /path/of/vendor/lib /path/public/dir
工作正常,但是每次我使用 composer 查找更新时,创建的符号链接都会被删除。
对包含来自供应商目录的资产的“最佳实践”有任何想法吗?
谢谢
【问题讨论】:
-
您对
assets:install有任何问题吗,因为这是最佳做法,只需运行该命令即可将所有资产放入您的公共目录 -
你在你的项目根目录中以
bin/console assets:install运行它 -
对不起,你能解释一下它是如何工作的吗?那是命令控制台 assets:install public --symlink 我已经在 bootstrap 的 vendor 目录(dists 子目录)中使用了它 那就是输出:尝试将资产安装为绝对符号链接。 [OK] 任何包都没有提供任何资产。
-
我从 netbeans,从控制台运行它。我能够执行 che 命令,问题是我无法理解如何解释运行该命令的“请链接 vendor/twbs/bootstrap/css ---> public 目录”,正如我所写的那样,报告了这个输出:尝试将资产安装为绝对符号链接。 [OK] 任何包都没有提供任何资产。
-
我认为,没有人能够为这个问题提供正确的答案。因为@kunicmarko20 只写了symfony 官方文档关于资产安装的报告,而且我没有要求复制/粘贴官方文档。无论如何,webencore pack 可能是一个很好的解决方案,而不是通过 composer 加载资产。 symfony.com/doc/current/frontend/encore/bootstrap.html我仍然想了解这样做的“最佳方法”是什么,而不是使用“正常工作”的东西......
标签: php symfony twig composer-php bootstrap-4