在symfony 2.1中安装和运行LiipImagineBundle

son*_*nam 4 symfony symfony-2.1 liipimaginebundle

以下是我遵循的步骤:

  1. 在我的composer.json中添加了以下内容:

    "require": {
         "imagine/Imagine": ">=0.2.8",
         "liip/imagine-bundle": "*@dev",
         ....
         }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 在命令行执行以下命令:

    composer update
    Installing imagine/imagine (v0.4.0)
    Installing liip/imagine-bundle (dev-master f7d5e4d)
    
    Run Code Online (Sandbox Code Playgroud)
  3. 在composer更新后,我在vendor文件夹中的目录结构如下所示:

在此输入图像描述

  1. 然后更新vendor/composer/autoload_namespaces.php

     'Imagine'   => $vendorDir .'/imagine/Imagine/lib/',
     'Liip\\ImagineBundle'=>$vendorDir . '/liip/imagine-bundle/',
    
    Run Code Online (Sandbox Code Playgroud)
  2. 注册包:

    new Liip\ImagineBundle\LiipImagineBundle(),
    
    Run Code Online (Sandbox Code Playgroud)
  3. 路由:

    # app/config/routing.yml
    _imagine:
    resource: .
    type:     imagine
    
    Run Code Online (Sandbox Code Playgroud)
  4. config.yml

      # app/config/config.yml
      liip_imagine:
      filter_sets:
         my_thumb:
            quality: 75
            filters:
               thumbnail: { size: [120, 90], mode: outbound }
    
    Run Code Online (Sandbox Code Playgroud)
  5. 添加到twig模板文件:

    <img src="{{ asset('bundles/acmedemo/images/1.jpg') | imagine_filter('my_thumb') }}" />
    
    Run Code Online (Sandbox Code Playgroud)
  6. 打开localhost/symfony/web/app_dev.php/demo/hello/test

没有缩略图生成.在查看源代码时,我发现了这一行:

  <img src="/symfony/web/app_dev.php/media/cache/my_thumb/symfony/web/bundles/acmedemo/images/1.jpg">
Run Code Online (Sandbox Code Playgroud)

我做了什么,我想念?有人可以帮我这个吗?我在Windows XP上使用xampp 1.8默认设置

son*_*nam 6

当我更换

 <img src="{{ asset('bundles/acmedemo/images/1.jpg') | imagine_filter('my_thumb') }}" />
Run Code Online (Sandbox Code Playgroud)

 <img src="{{ 'bundles/acmedemo/images/1.jpg' | imagine_filter('my_thumb') }}" />
Run Code Online (Sandbox Code Playgroud)

我得到了缩略图.我删除了twig的asset()帮助程序,它工作但不知道它是如何工作的.