我在下面的代码中添加了一个非相关模型的自定义过滤器,但我无法过滤它。有人能指出我正确的方向吗?
public function addLanguagesColumnQuery($query, $field, $value)
{
$rootAlias = $query->getRootAlias();
$query->andWhereIn($rootAlias.'.journalist_id IN (SELECT journalist_id FROM journalist_language where language_id IN ('.implode(",", array_filter($value, 'strlen')).')');
return $query;
}
答案 0 :(得分:1)
你的架构是什么?
我认为问题来自您用于子查询的表名。您应该使用教义名称而不是数据库中的名称。
因此,请尝试使用JournalistLanguage
(或模式中定义的那个)而不是journalist_language
。