Полный пример на findByAttributes в Yii - PullRequest
4 голосов
/ 01 июля 2011

Буду признателен, если кто-то покажет полный пример того, как использовать findByAttributes в фреймворке Yii.

Официальный документ @ http://www.yiiframework.com/doc/api/1.1/CActiveRecord#findByAttributes-detail

public CActiveRecord findByAttributes(array $attributes, mixed $condition='', array $params=array ( ))

Я знаю, как использовать $ атрибуты. Я не вижу веской причины использовать $ условие и $ params в findByAttributes.

Скажите, пожалуйста, по какому сценарию вы используете их в findByAttributes.

Спасибо

Ответы [ 2 ]

4 голосов
/ 01 июля 2011

Похоже, что оно было включено для соответствия аналогичной функции в других средах и лучше всего используется, когда ваш запрос в основном представляет собой массив имен столбцов, например array('dept_id'=>2,'active'=>'y') - в вашей программе могут быть ситуации, когда проще передать массив в этот формат, а не переписывать их в условиях. Возможно, вы захотите добавить дополнительные условия в параметр $ условие или те, которые $ attribute могут не поддерживать, например project_name LIKE "foo%".

$ params используются здесь, как и другие типы запросов, для привязки значений условий к типам столбцов для фильтрации.

см .: http://www.yiiframework.com/doc/guide/1.1/en/database.ar#reading-record

Информация: когда условие запроса о сопоставляя некоторые столбцы с указанные значения, мы можем использовать findByAttributes (). Мы позволяем Параметры $ attribute являются массивом значения, проиндексированные по столбцу имена. В некоторых рамках эта задача может быть достигнуто путем вызова методов как findByNameAndTitle. Хотя это подход выглядит привлекательно, это часто вызывает замешательство, конфликт и проблемы как чувствительность к регистру имен столбцов.

1 голос
/ 11 апреля 2014

пример findByAttributes () :

$modelname->findByAttributes(array('fieldName1'=>$value1,'fieldName2'=>$value2));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...