我有两张桌子:
USER id,姓名,姓氏
USERUSER u_id1,u_id2,日期,状态
我这里有一个模型在行动USER:
public function getUsers($status)
{
return $this->hasMany(UserUser::className(), ['u_id1' => 'id'])
->where(['status' => $status]);
}
但我需要添加能够搜索表User的'name','surname',如果我添加一个WHERE或Like, 写一个错误,表UserUser这样的列(名称,姓氏)没有找到? 如何将这两个值添加到搜索或返回值? 我使用Yii2。
答案 0 :(得分:1)
return $this->hasMany(User::className(), ['id' => 'u_id2'])->viaTable(UserUser::tableName(), ['u_id1' => 'id'],
function($query) {
$query->where(['status' => 1]);
})->andWhere(['like', 'name', $input])
->orWhere(['like', 'last_name', $input]);