2017-05-10 19 views
0

FOSCommentBundleのコメントをユーザーの役割に限定するためにACLを実装しようとしています。 私はバンドルドックを段階的に実行しましたが、エラーが表示されます:"acl"の定義にクラスがありません

"acl"の定義にはクラスがありません。

私はので、私は 『のacl「の定義を』コマンドでしようとしましたが、私に同じエラーを与えsymfony3はACLがインストールされていなかったと思った私のアプリ/設定/ config.yml

fos_comment: 
db_driver: orm 
class: 
    model: 
     comment: BackEndBundle\Entity\Comment 
     thread: BackEndBundle\Entity\Thread 
     vote: BackEndBundle\Entity\Vote  

acl: true 
service: 
    acl: 
     thread: fos_comment.acl.thread.roles 
     comment: fos_comment.acl.comment.roles 
     vote: fos_comment.acl.vote.roles 
    manager: 
     thread: fos_comment.manager.thread.acl 
     comment: fos_comment.manager.comment.acl 
     vote: fos_comment.manager.vote.acl 

acl_roles: 
    comment: 
     create: IS_AUTHENTICATED_ANONYMOUSLY 
     view: IS_AUTHENTICATED_ANONYMOUSLY 
     edit: ROLE_ADMIN 
     delete: ROLE_ADMIN 
    thread: 
     create: IS_AUTHENTICATED_ANONYMOUSLY 
     view: IS_AUTHENTICATED_ANONYMOUSLY 
     edit: ROLE_ADMIN 
     delete: ROLE_ADMIN 
    vote: 
     create: IS_AUTHENTICATED_ANONYMOUSLY 
     view: IS_AUTHENTICATED_ANONYMOUSLY 
     edit: ROLE_ADMIN 
     delete: ROLE_ADMIN  
assetic: 
    bundles: [ "FOSCommentBundle" ] 

ザッツ

クラスはありません "。私のアプリ/設定/ services.yml

parameters:  

services: 
    acl: 
     connection: default 

答えて

1

アプリ/設定/ services.ymlにACL設定を追加する必要はありませんザッツ

。この場合のバンドルFOSCommentBundleには、サービス用の独自の設定ファイルがあります。

ちょうど作曲を経由してバンドルをインストールして、追加バンドルをAppKernel.php

あなたは上記のすべての行っている場合は
$bundles = [ 
... 
new FOS\CommentBundle\FOSCommentBundle(), 
... 

に、単にアプリ/設定/ services.ymlからacl: connection: defaultを削除し、それが動作するはずです。 bin\console debug:container fos_commentで利用可能なFOSCommentBundleサービスがあるかどうかを確認することができます。

+0

ありがとうございましたこれまでどんなエラーも表示されず、うまくいきます。しかし、まだ編集と削除ボタンを表示していません。私は感謝を続けていきます。 – Pillow

関連する問題