CakePHP:从另一个模型中搜索虚拟字段

时间:2014-10-20 22:44:23

标签: cakephp cakedc

我在从另一个模型中搜索虚拟字段时遇到问题。我有2个型号:用户/订单。两者都设置正常,但下面的错误除外:

用户模型(hasMany Order):

public $virtualFields = array(
    'name' => 'CONCAT(User.first, " ", User.last)'
);

public $filterArgs = array(
    'search' => array('type' => 'like', 'field'=>array('User.name', 'User.first', 'User.last', 'User.email')),
);

以上将搜索User.name(最后一个)。

订单型号(belongsTo用户):

public $filterArgs = array(
    'search' => array('type' => 'like', 'field'=>array('Order.id', 'User.email', 'User.first', 'User.last', 'User.name', 'Order.notes')),
);

尝试从Order模型访问User.name时出现数据库错误。如何从“头到尾”搜索订单?

1 个答案:

答案 0 :(得分:0)

这适合我。

public $filterArgs = array('CONCAT(Contact.firstname , " ", Contact.lastname) LIKE' => "%$haystack%"));