1

我正在构建一个在线帐户应用程序,其中每个企业都有自己的数据,因此每个表都有一个字段 business_id。

有没有办法自动为每个模型添加条件

Model.business_id => x 

例如,如果用户搜索所有包含 Project 的事务,则添加的条件将是:

Transaction.business_id => x
Project.business_id => x

我猜这最好放在一种行为中,因为它适用于除两个模型之外的所有模型

谢谢

4

1 回答 1

1

您可以在 beforeFind() 中修改查询数据,这也可以在行为中

在您的模型中:

$actsAs = array('BusinessCondition');

行为将类似于:

<?php
App::uses('AuthComponent', 'Controller/Component');

class BusinessCondition extends ModelBehavior {

    public function beforeFind(Model $Model, $query) {
        $query['conditions'][$Model->alias . '.business_id'] = AuthComponent::user('business_id');
        return $query;
    }
}
于 2012-07-28T20:16:12.597 回答