1
似乎在执行cache:warmup
命令时验证程序元数据未被预热。有没有办法预热缓存?symfony2验证程序:热身验证程序元数据
似乎在执行cache:warmup
命令时验证程序元数据未被预热。有没有办法预热缓存?symfony2验证程序:热身验证程序元数据
您可以创建一个将在缓存加温过程中调用的服务。
示例代码
// src/Acme/MainBundle/Cache/ValidatorCacheWarmer.php
namespace Acme\MainBundle\Cache;
use Symfony\Component\HttpKernel\CacheWarmer\CacheWarmerInterface;
class ValidatorCacheWarmer implements CacheWarmerInterface
{
public function warmUp($cacheDir)
{
// ... do some sort of operations to "warm" your cache
}
public function isOptional()
{
return true;
}
}
services.yml
services:
main.warmer.validator_cache_warmer:
class: Acme\MainBundle\Cache\ValidatorCacheWarmer
tags:
- { name: kernel.cache_warmer, priority: 0 }
上实际是什么在热身的方法做,我就开始看这个http://api.symfony.com/2.3/Symfony/Component/Validator/ValidatorBuilder.html
特别法setMetadataCache()
和setMetadataFactory()
嗯,我希望th在那里应该是symfony中的标准命令,这样做:) –