Php RedBean 4.3“已经为此密钥指定了数据库”

Php RedBean 4.3“已经为此密钥指定了数据库”,php,validation,redbean,Php,Validation,Redbean,我创建了一个小站点,并决定使用库作为站点的验证部分。我注意到没有一种唯一的方法可以返回数据库中是否已经存在传递的值。我很快添加了这个方法,但不喜欢推荐这样做。我补充说: protected function validateUnique($field, $value, $table) { $model = new Model(); return $model->unique($table[0], $field, $value); } 到主验证器类。问题是,它正在工作,但只

我创建了一个小站点,并决定使用库作为站点的验证部分。我注意到没有一种唯一的方法可以返回数据库中是否已经存在传递的值。我很快添加了这个方法,但不喜欢推荐这样做。我补充说:

protected function validateUnique($field, $value, $table)
{
    $model = new Model();
    return $model->unique($table[0], $field, $value);
}
到主验证器类。问题是,它正在工作,但只有一个字段。如果在验证过程中对2个或多个字段使用此选项,则会出现此错误

致命错误:未捕获异常“RedBeanPHP\RedException”,消息为“已为此密钥指定了数据库”。在C:\dev\htdocs\Shop\vendor\gabordemooij\redbean\RedBeanPHP\Facade.php:295堆栈跟踪:0 C:\dev\htdocs\Shop\vendor\gabordemooij\redbean\RedBeanPHP\Facade.php216:RedBeanPHP\Facade::addDatabase'default','mysql:host=127….','root',false 1 C:\dev\htdocs\Shop\app\libs\Model.php18:redbeanppp\Facade::setup'mysql:host=127….','root',2 C:\dev\htdocs\Shop\vendor\vlucas\valitron\src\valitron\Validator.php429:Shop\libs\Model->\uu constructure 3[内部函数]:valitron\Validator->Validator->validateUnique'email'。example@g...',数组4 C:\dev\htdocs\Shop\vendor\vlucas\valitron\src\valitron\Validator.php885:调用用户函数数组“email”、“email”。example@g...,数组5 C:\dev\htdocs\Shop\app\controllers\AuthController.php68:Valitron\Validator->validate 6[内部函数]:Shop\controllers\AuthController->postRegister 7 C:\dev\htdocs\Shop\app\libs\Bootstrap.php64:在第295行的C:\dev\htdocs\Shop\vendor\gabordemooij\redbean\redbeanppp\Facade.php中

我第一次与RedBean和Valitron合作,但我无法说出问题的原因。

我也遇到了同样的错误

已为此密钥指定了数据库。在/var/www/html中

我已经设置了一个数据库,想连接另一个数据库,然后我使用R::addDatabase函数添加新数据库,并使用R::selectDatabase函数选择该数据库

代码是

define('dsn2', 'pgsql:host=localhost;dbname=mydb';
R::addDatabase('DB2', dsn2, 'dbusers', 'dbpasss');
R::selectDatabase('DB2');

你能解决这个问题吗?