【问题标题】:How to implement \Phalcon\Mvc\Model::findIn()?如何实现\Phalcon\Mvc\Model::findIn()?
【发布时间】:2014-04-29 15:02:03
【问题描述】:

相当简单的问题,但我似乎找不到任何关于它的信息。

我有一组 id,我需要找到所有匹配的记录。

所以我想查询:

$records = MyModel::findIn([1,2,3,4]);

但我不知道如何实现它。有什么想法吗?

【问题讨论】:

    标签: model phalcon


    【解决方案1】:

    inWhere 方法中查看Phalcon\Mvc\Model\Criteria

    您可以创建一个新模型的方法,例如:

    public static function findIn(array $identifiers)
    {
        return self::query()
            ->inWhere('id', $identifiers)
            ->execute();
    }
    

    【讨论】:

    • 有效!但是,当 $identifiers = array()... 我不确定如何模拟空结果时 inWhere 出现错误?
    • 我不知道你是否需要模拟一个空的结果,如果你的 $identifiers 是空的就不要调用 Model::findIn
    • 例如。 MyModel::findIn([1,2,3])->delete()
    • 似乎创建一个ResultSet需要很多参数(见phql doc)丑陋但高效的sn-p:if (!$identifiers) $identifiers = array(null);
    猜你喜欢
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    • 1970-01-01
    相关资源
    最近更新 更多