0

この MongoDB ドキュメントがあります: MyBundle/Document/Image.

画像、そのパス、幅、およびその他の属性を表します。

ここで、画像を操作する必要があります。選択した画像操作ライブラリに加えて、これに対処するためのアプリ固有のクラスが必要だと思います。次のようなことをするといいと思います。

$image_manager = new ImageManager;
$image = $image_repository->find($id);
$thumbnail = $image_manager->createThumbnail($image);

ここで、ImageManager クラスでカスタム リポジトリのように MongoDB クエリも処理する必要があるかどうかわからないので、処理しないとします。では、ImageManager クラスをどこに配置すればよいでしょうか?

両方の種類のタスクを処理させるのは間違っていると思いますか? (例:createThumbnailfindAllImagesWithoutThumbnail)

4

2 に答える 2

1

次のようServiceに、アプリにすべてのサービスを配置するフォルダーがあります。

  • UserService
  • User\AvatarService
  • OrganizationService
  • 等...

もちろん、 のManager代わりに を使用することもできますServiceが、考え方は同じです。

ほとんどの場合、私のサービスには次のようなメソッドがあります。

  • find($id)
  • save(Class $class)
  • delete(Class $class)
  • 等...

一部のサービスには他の方法があります。たとえば、アバター ファイルのアップロードを処理するメソッドがありますUser\AvatarServiceupload()

ところで、私は自分のサービスをバンドルから除外しています

于 2012-08-31T12:32:36.897 に答える
0

symfony2 で WideImage を使用しています。ベンダーに入れ、AppKernel.php に追加して自動ロードするだけです。そして、それはプロジェクト全体に表示されます。

于 2012-08-31T07:30:55.133 に答える