CakePHP Cookbookを入手できない単純なACLの例

ACLがCakePHPで動作するのに問題があります。私はCakePHP Cookbook 2.0の例題シンプルなAclで制御されたアプリケーションを使用して、手順を2回実行しましたが、同じ問題が発生しました。

すべてが正しくセットアップされているようです。

  • I'm able to create my groups, and users.
  • The aros table appears to have the same rows shown in the example on the web.
  • The acos and aros_acos tables appear to get populated with values that resemble the article.
  • And when I visit a page that's setup to be protected, I'm presented with the login page.

しかし、作成したアカウントでログインすると、次のエラーが表示されます。

Warning (512): DbAcl::check() - 
Failed ARO/ACO node lookup in permissions check.  Node     references:
Aro: Array
(
[User] => Array
    (
        [id] => 1
        [username] => dc
        [email] => [email protected]
        [group_id] => 1
        [created] => 2011-10-27 14:58:59
        [modified] => 2011-10-27 14:58:59
    )
)  
Aco: /Posts/add [CORE/Cake/Controller/Component/AclComponent.php, line 303]

そのアカウントは管理者として設定されており、管理者グループにはすべてのアクセス権が与えられています...もしうまくいかなければ問題はないはずですが、私の中には低レベルの問題があるようです方法。もし私がDBテーブルを投稿することができれば助けになるだろうが、ここから始めたいと思った。あなたが提供できるどんな洞察にも感謝します。

0
私はケーキで仕事をしていましたが、そのACLプラグインには、カーターが薬を飲むよりも多くの問題があります。ただ頭を上げる。 net.tutsplus.com/tutorials/を試してみてください。 PHP /…
追加された 著者 Michael D. Irizarry,

2 答え

この問題を解決するためにドキュメントが更新されました。これをAppControllerのbeforeFilterメソッドに追加すると、問題が解決されます。

$this->Auth->authorize = array(
    AuthComponent::ALL => array('actionPath' => 'controllers'),
    'Actions',
);
1
追加された

Add $this->Auth->allow('initDB'); in beforeFilter()

0
追加された
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com