帮助过滤cakephp中的数据

时间:2010-10-13 01:04:08

标签: php cakephp

我是cakephp的新手,我在查询数据方面遇到了一些问题。 我有一个用户模型和一个多对多关系的产品模型。

我的产品/索引操作只是为了获取与该用户相关联的产品(用户存储在会话中)而不是所有产品(默认情况下它是这样做的)。

请帮忙。

2 个答案:

答案 0 :(得分:1)

您只需要set up the relationship正确,其余部分是自动的。

型号:

class User extends AppModel {
    var $hasAndBelongsToMany = array(
        'Product' => array( /* set up relationship */ )
    );
}

控制器:

$this->User->recursive = 2; // just to make sure, shouldn't be necessary
$user = $this->User->read(null, $userId);

debug($user);
/**
 * $user['User'] contains the user data
 * $user['Product'] contains associated products
 */

答案 1 :(得分:0)

这应该可以解决问题:

$products = $this->Product->find('all', array(
    'conditions' => array(
        'User.id' => $user_id_from_session
    )
));