2

我在一个项目中使用奏鸣曲(http://sonata-project.org/bundles/media/2-2/doc/index.html),我有 50GB 的拇指,我不再想要的分辨率. 我修改了配置文件中的分辨率,但拇指仍然具有旧的分辨率/大小。

我怎样才能强迫索纳塔重建我所有的拇指?

4

2 回答 2

8

这对我有用:

php app/console sonata:media:sync-thumbnails sonata.media.provider.image default
于 2014-12-20T20:59:28.567 回答
1

据我所知,Sonata Media Bundle 集成了 LiipImagineBundle来创建图像缩略图。如果是这样,它会在第一次请求时创建拇指并保存在缓存中(实际上是一个目录)。所以你必须清除图像缓存,LiipImagineBundle 将在下一次请求每个图像时重建它们。

要清除 LiipImagineBundle 图像缓存,可以使用控制台命令liip:imagine:cache:remove。它的文档说:

liip:imagine:cache:remove命令通过指定参数删除缓存。

路径应该用空格分隔:
php app/console liip:imagine:cache:remove path1 path2
给定的所有缓存paths都将丢失。

如果使用--filters参数:
php app/console liip:imagine:cache:remove --filters=thumb1 --filters=thumb2
给定过滤器的所有缓存都将丢失。

您可以组合这些参数:
php app/console liip:imagine:cache:remove path1 path2 --filters=thumb1 --filters=thumb2

php app/console liip:imagine:cache:remove
不带参数执行此命令时,所有路径和过滤器的缓存都将丢失。

因此,要清除所有缓存的图像,您应该使用:php app/console liip:imagine:cache:remove

于 2014-12-19T15:19:25.767 回答