аналог findAllByPk в Yii2

Как написать запрос для ActiveRecord, который будет аналогом функции findAllByPk в юи?

Я пробовал это:

$records = TableName::find($ids)->all();

Но не работает, возвращает все записи.


person Alex    schedule 15.06.2014    source источник


Ответы (2)


Если $ids является массивом, если первичные ключи, такие как [1, 3, 5, 23]. Вы можете использовать это

$entries = TableName::findAll($ids);

Это короткий путь для этого синтаксиса

$entries = TableName::find()
                   ->where(['id'=>$ids])
                   ->all();
person ahb360    schedule 15.06.2014

Предполагая, что $ids является массивом,

$entries = TableName::find()
                ->where(['id'=>$ids])
                ->all();

Много других примеров в официальных документах.

person Felipe    schedule 15.06.2014
comment
вы пропустили квадратную закрывающую скобку в аргументе метода where - person gvgvgvijayan; 16.06.2014