私のデータベースにusers
というテーブルがあり、テーブル内のすべてのユーザが特定のコントローラアクションを実行する権限を持っているかどうかをチェックしたいとします。私はこのような何か場合:明らかcakephpループ内のACLアクセス許可
foreach($users as $user)
{
// check if user has permission to execute action
$is_allowed = $this->Acl->check(
array('model'=>'User', 'foreign_key'=>$the_user_id),
'controllers/MyController/action_to_be_executed');
if(!$is_allowed)
{
// give permission to user
$this->Acl->allow(
array('model'=>'User', 'foreign_key'=>$the_user_id),
'controllers/MyController/action_to_be_executed');
}
}
、私は上記のようなものを持っている場合は、より多くのユーザーは、私がテーブルに持っているが、遅く、このコードは次のようになります。私のテーブルに5,000人以上のユーザーが含まれていても、どのようにしてこれを最適化して速く稼働させることができますか?助言がありますか?でもに、事前に
おかげで