Yii2 select2数据库异常绑定变量个数与token个数不匹配
Yii2 select2 database exception number of bound variables does not match number of tokens
当我在我的 yii 2 应用程序中使用 select2 小部件时,它会导致以下错误:
SQLSTATE [HY093]: Invalid parameter number: number of bound variables does not match number of tokens
The SQL being executed was: SELECT * FROM `page` WHERE `page`.`id`=6
执行的 sql 没有在页面模型的查找函数中应用我的覆盖,如下所示:
public static function find()
{
return parent::find()->where(['websiteId' => Yii::$app->website->id]);
}
调试堆栈提示我使用 ActiveRecord 中第 333 行的 beforeInsert() 函数和此代码:
$this->node->refresh();
一切似乎都很好,那么有什么问题吗?
我也遇到了同样的问题,好像是framework的bug!
只需找到 refresh() 函数并更改 vendor/yiisoft/yii2/db/ActiveRecord.php 文件
中的以下行
$query->where($pk);
至
$query->andWhere($pk);
当我在我的 yii 2 应用程序中使用 select2 小部件时,它会导致以下错误:
SQLSTATE [HY093]: Invalid parameter number: number of bound variables does not match number of tokens
The SQL being executed was: SELECT * FROM `page` WHERE `page`.`id`=6
执行的 sql 没有在页面模型的查找函数中应用我的覆盖,如下所示:
public static function find()
{
return parent::find()->where(['websiteId' => Yii::$app->website->id]);
}
调试堆栈提示我使用 ActiveRecord 中第 333 行的 beforeInsert() 函数和此代码:
$this->node->refresh();
一切似乎都很好,那么有什么问题吗?
我也遇到了同样的问题,好像是framework的bug! 只需找到 refresh() 函数并更改 vendor/yiisoft/yii2/db/ActiveRecord.php 文件
中的以下行$query->where($pk);
至
$query->andWhere($pk);