我正在使用symfony 2,composer和sass框架
我在MYBundle / Resources / public /
下有额外的名为files /和images /的文件夹某些原因,当我运行命令时,此文件或图像文件夹未在web / ..下创建:
php app / console assets:install
但是他们确实在web / bundles / mybundle / files下创建..
与images文件夹相同:web / bundles / mybundle / images ..
我只有这些文件夹..在网页下..
web/
bundles/
css/
js/
如何获取web下的其他两个文件夹/图像和文件夹......
像这样......web/
bundles/
images/
css/
js/
files/
因为我需要在文件/文件夹中保留一些像termsandconditions.pdf这样的文件。
# Assetic Configuration
parameters:
# Assetic
assetic.filter.compass.images_dir: %kernel.root_dir%/../web/images
assetic.filter.compass.http_path: /images
assetic.filter.compass.images_dir: %kernel.root_dir%/../web/files
assetic.filter.compass.http_path: /files
assetic:
debug: %kernel.debug%
use_controller: false
filters:
sass: ~
compass: ~
cssrewrite: ~
路径是:
<div class="small-4 columns">
<p>I accept the <a href="{{ asset('/files/terms_and_conditions.pdf') }}" target="_blank"><span class="pinkText">Terms and Conditions</span></a></p>
</div>
如果有人采取步骤,请告诉我......我对Symfony了解
答案 0 :(得分:0)
安装资产时,公用文件夹中的所有内容都将被复制到Web文件夹中。
所以创建一个文件夹文件,然后像这样调用它们:
<p>I accept the <a href="{{ asset('bundles/bundleName/files/terms_and_conditions.pdf') }}">
或使用控制器为其服务
use Symfony\Component\HttpFoundation\BinaryFileResponse;
Class Controller ....
function downloadTermsAndCondsAction() {
$file = __DIR__.'/../../../../web/bundles/bundleName/files/terms_and_conditions.pdf';
$response = new BinaryFileResponse($file);
return $response;
}
答案 1 :(得分:0)
在您的具体情况下,我建议您手动将您的terms_and_conditions.pdf放在网络/文件夹中。没有必要使用bundle / app / assetic来解决这种情况,当然也没有使用控制器。