3

CakePHP 2アプリにグループ(ロール)ベースのACLシステムを実装しています。

これで、ACLがデータの将来の変更に応じてaco / aroテーブルに自動的にデータを入力することを理解しましたが、既存のデータに関してこれらのテーブルを埋めるにはどうすればよいですか?既存のデータを管理する方法をカバーするドキュメントはほとんど見つかりませんでした。

モデルを分割する方法は次のとおりです。

グループモデルは、リクエスターと制御の両方です。4つのグループがあります。

public $actsAs = array(
        'Acl' => array('type' => 'both')
)

私はユーザーモデルを持っています。これは、リクエスターの動作のために制御され、グループにバインドされています。既存のユーザーは11000人弱です。

public $actsAs = array(
        'Acl' => array('type' => 'controlled')
)

function bindNode($user) {
        return array('model' => 'Group', 'foreign_key' => $user['User']['group_id']);
}

そして、私は制御されている他のいくつかのモデルを持っています。モデルは、クライアント(260エントリ)、メモ(500エントリ未満)、および登録(約20000エントリ)です。

public $actsAs = array(
        'Acl' => array('type' => 'controlled')
)
4

1 に答える 1

0

何がACOモデルとして適格であるかを誤解していたことがわかりました。私が本当に必要としたのは、グループの4つのAROエントリだけでした。同じタイプのモデルへのarosに別のアクセスを必要としないため、ACOは役に立ちませんでした。

于 2013-01-04T20:48:06.650 に答える