我正在使用Symfony 3.1,我尝试以这种方式配置Monolog,不会记录来自Googlebot的请求.为此我写了一个UserAgentProcessor已按预期工作的.在下一步中,我尝试编写BotFilter,如下所示:
<?php
namespace AppBundle\Handler;
use Monolog\Handler\HandlerWrapper;
class FilterBotsHandler extends HandlerWrapper
{
/**
* {@inheritdoc}
*/
public function isHandling(array $record)
{
if (stripos($record['extra']['userAgent'], 'bot') !== false){
return false;
} else {
return $this->handler->isHandling($record);
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是受到HandlerWrapper抽象类中的注释的启发(请看这里).
现在我想将该过滤器添加到我的monolog yml-configuration中.我尝试将它添加到我的服务中,但这不可能,HandlerWrapper因为它的构造函数需要一个Handler实例.我研究了如何在没有服务的情况下使用过滤器,但据我所知,monolog bundle只接受内置类型和通用服务类型.
现在的问题是:我如何在配置中使用过滤器?
我正在尝试验证集合表单字段:
$builder->add(
'autor',
'collection',
array(
'type' => 'text',
'options' => array('required' => false),
'allow_add' => true,
'allow_delete' => true,
'by_reference' => false,
'error_bubbling' => false
)
);
Run Code Online (Sandbox Code Playgroud)
我使用JavaScript,如Cookbook中所建议的,动态地向集合中添加更多文本字段.我的问题是,我不知道,如何验证这些字段.集合验证器允许我按名称验证集合的特定字段,而不仅仅是它的每个字段.我该如何管理?
如果可以检查的话,即使是至少有一个字段notBlank而不是强制它到每个字段,也会更冷.
最好的祝福