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中的標準命令,這樣做:) –