FitTech
@FitTech

Почему не срабатывает запрос через ActiveRecord?

В базе есть 2 таблицы:
  1. Request
  2. Customer


На странице нужно выводить GridView виджет с фильтром по полю buy_type.

В классе RequestSearch делаю :
$query = Request::find()
        ->select('customer.buy_type, request.id, request.customer_email)
        ->innerJoin('customer', '"request"."email" = "customer"."email"');

Этот запрос выводит в DataProvider данные request.id, request.customer_email, а вот buy_type не выводит, получаю ошибку что неизвестное свойство buy_type.

А когда делаю запрос такой:
$query = (new \yii\db\Query())
            ->select('customer.buy_type, request.id, request.document_title, 
        request.customer_email, request.doctype_id, request.created')
            ->from('request')
            ->innerJoin('customer', '"request"."customer_email" = "customer"."email"');


То все поля есть и всё работает. Это уже не впервые встречаю такое, можете подсказать или навести на мысль в чем проблема?
  • Вопрос задан
  • 114 просмотров
Решения вопроса 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
вижу следующие ошибки в первом варианте:
1 пропущена кавычка после request.customer_email
2 вместо '"request"."email" наверное надо '"request"."customer_email"
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы