Zend framework2 ZendFramework 2:不存在数据库适配器
我有这门课:Zend framework2 ZendFramework 2:不存在数据库适配器,zend-framework2,adapter,global,Zend Framework2,Adapter,Global,我有这门课: <?php class RegisterFilter extends InputFilter { public function __construct() { $this->add(array( 'name' => 'email1', 'required' => true, 'validators' => array(
<?php
class RegisterFilter extends InputFilter
{
public function __construct()
{
$this->add(array(
'name' => 'email1',
'required' => true,
'validators' => array(
array(
'name' => 'EmailAddress',
'options' => array(
'domain' => true,
),
),
array(
'name' => 'Identical',
'options' => array(
'token' => 'email2',
),
),
array(
'name' => 'Db\NoRecordExists',
'options' => array(
'table' => 'user',
'field' => 'email',
'messages' => array(
'recordFound' => "Email already exist ... ! <br>",
),
),
),
),
));
}
}
?>
我收到以下错误:不存在数据库适配器。你知道为什么会这样吗?如果你读过这本书就好了。给定的错误消息的意思正是它所说的。您没有在验证器中提供DB适配器 来自文档:
$validator = new Zend\Validator\Db\RecordExists(
array(
'table' => 'users',
'field' => 'emailaddress',
'adapter' => $dbAdapter
)
);
如果您想了解如何将DB适配器放入表单中,我已经写了关于上述主题的文章。$dbAdapter的值是多少。此外,他们使用的方式也不同。另外,我可以为表单设置验证器吗。我可以设置一个过滤器。想知道它是否是同一个过程。@EliMiller是的,他们使用它的方式不同,但架构仍然相同$dbAdapter应该类似于Zend\Db\Adapter\Adapter,它必须是AdapterInterface;)过滤器/验证器的情况基本相同。