Код: Выделить всё
/**
* связка с транспортник 1
* @return \yii\db\ActiveQuery
*/
public function getTransporter()
{
return $this->hasOne(Transporter::className(), ['id' => 'transporter_id']);
}
/**
* связка с транспортник 2
* @return \yii\db\ActiveQuery
*/
public function getTransporter2()
{
return $this->hasOne(Transporter::className(), ['id' => 'transporter_id_2']);
}
во вьюшке делаю вывод и через аттрибьют указываю поиск:
Код: Выделить всё
[
'label' => 'Транспортник',
'attribute' => 'transporterNameSearch',
'format' => 'raw',
'value' => function($model){
$ret = [];
if($model->transporter){
$ret [] = $model->transporter->urlTo;
}
if($model->transporter2){
$ret [] = $model->transporter2->urlTo;
}
return implode("<br>", $ret);
}
],
Код: Выделить всё
if($this->transporterNameSearch){
$query
->joinWith('transporter')
->joinWith('transporter2')
->andWhere(['like' , 'm_transporters__transporter.name', $this->transporterNameSearch])
->andWhere(['like' , 'm_transporters__transporter.name', $this->transporterNameSearch]); // как тут указать связь с transporter2?
;
}
Я не понимаю как указать обращение к таблице m_transporters__transporter... ведь надо два раза задействовать одну таблицу в разных связях и в одном запросе