Amazon AWS S3 アカウントにアクセスするために KnpGraufette バンドルを使用して、Symfony2 プロジェクトで LiipImagine を実行しようとしています。
これで、S3 にアクセスし、データを保存およびロードできるようになりました。LiipImagine を使用してローカル画像をフィルタリングできます。ここまでは順調ですね。
ここで、次の構成を使用して、gaufrette/s3 サービスと、このチュートリアルに示されている LiipImagine ans を結合しました。
services:
amazonS3:
class: AmazonS3
arguments:
options:
key: '%aws_key%'
secret: '%aws_secret_key%'
certificate_authority: '%kernel.root_dir%/config/cacert.pem'
gaufrette.amazonS3_adapter:
class: Gaufrette\Adapter\AmazonS3
arguments:
service: '@amazonS3'
bucket_name: '%aws_bucketname%'
gaufrette.amazonS3.fileSystemService:
class: Gaufrette\Filesystem
arguments:
adapter: '@gaufrette.amazonS3_adapter'
our.fs.dataloader.s3:
class: Liip\ImagineBundle\Imagine\Data\Loader\FileSystemLoader
arguments:
- "@liip_imagine"
- "@gaufrette.amazonS3.fileSystemService"
tags:
- { name: 'liip_imagine.data.loader', loader: 'gaufrette.amazonS3.fileSystemService' }
liip_imagine:
filter_sets:
s3_clientsbar:
data_loader: 'our.fs.dataloader.s3'
filters:
thumbnail: { size: [50, 50], mode: outbound, allow_upscale: true }
LiipImagine を使用して S3 リソースをフィルタリングすると、次のエラーが発生します。
ErrorException: Catchable Fatal Error: Argument 2 passed to Liip\ImagineBundle\Imagine\Data\Loader\FileSystemLoader::__construct() must be an array, object given, called in
私のフィルタリングをテストするためのコードは次のとおりです。
$imagemanagerResponse = $this->container->get('liip_imagine.controller')->filterAction($this->getRequest(),'the-actual-existing-loadable-aws-id' , 's3_clientsbar');
さらに: モデレーターはタグ Gaufrette、KnpGaufrette、または KnpGaufretteBundle を追加できますか?