Код: Выделить всё
Questionnaire::find()->with("customer", "account", "statuses", "status", "creditProduct", "currentStatus")
Код: Выделить всё
Questionnaire::find()->with("customer", "account", "status", "creditProduct", "currentStatus")->andFilterWhere(['like', 'customer.first_name', 'иван'])
Database Exception – yii\db\Exception
SQLSTATE[42703]: Undefined column: 7 ERROR: column "first_name" does not exist
LINE 1: SELECT COUNT(*) FROM "questionnaires" WHERE "first_name" LIK...
^
The SQL being executed was: SELECT COUNT(*) FROM "questionnaires" WHERE "first_name" LIKE '%иван%'
т.е., понятно, что в этом случае данные из связанной таблицы берутся из отдельного запроса.
Поступаю иным образом:
Код: Выделить всё
Questionnaire::find()->with(["customer"=> function ($query) {
$query
->andFilterWhere(['like', 'first_name', 'иван']);
}, "account", "status", "creditProduct", "currentStatus"]);
Подскажите, пожалуйста, как мне решить данную проблему? Как извлечь данные из связанных таблиц с помощью andFilterWhere?