gpt4 book ai didi

php - Phalcon ODM 批量删除

转载 作者:可可西里 更新时间:2023-11-01 10:42:12 28 4
gpt4 key购买 nike

我想知道是否可以在 phalcon ODM 中进行批量删除(使用单个操作),而不是通过“delete()”方法获取文档并在循环中一个一个地删除它们?

我需要这样的东西:

$db->users->remove(array("type" => "abc"));

官方文档对此只字未提,转储类方法也没有透露任何新​​信息。

附言。我正在使用 phalcon 2.0.10

最佳答案

有些人要求分享我正在使用的方法

我在 ModelBase 中创建了一个方法。所有其他模型都扩展了它,因此它们可以访问它的方法。我使用静态函数是为了不创建类的实例。

class ModelBase extends \Phalcon\Mvc\Collection
{
public static function deleteBulk(array $conditions)
{
$class = get_called_class();
$model = new $class;
$collection = $model->getSource();

# I have a registered service mongo in DI, so i just get it from there
$mongo = \Phalcon\Di::getDefault()->getMongo();

return $mongo->$collection->remove($conditions);
}
}

然后我有一个模型:

class Items extends ModelBase
{

}

所以当我需要批量删除时,我只需调用:

Items::deleteBulk(array("type" => "abc"));

关于php - Phalcon ODM 批量删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37805438/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com