FosCommentBundle对Symfony3的资产例外

时间:2017-07-26 09:14:31

标签: php-7 symfony-3.2 symfony-3.3

我试图将FosCommentBundle用于Symfony3。

我使用documentation of bundle完成了所有安装步骤。

我添加了AppKernel信息并创建了数据库,更新了模式并添加了Jquery3。

但是当我尝试检查index.html.twig时,它会出现以下错误。

There is no extension able to load the configuration for "assetic" (in C:\xampp\htdocs\blogbundle\app/config\config.yml). Looked for namespace "assetic", found "framework", "security", "twig", "monolog", "swiftmailer", "doctrine", "sensio_framework_extra", "fos_rest", "fos_comment", "jms_serializer", "debug", "web_profiler", "sensio_distribution", "web_server" in C:\xampp\htdocs\blogbundle\app/config\config.yml (which is being imported from "C:\xampp\htdocs\blogbundle\app/config/config_dev.yml").

我的config.yml

fos_comment:
    db_driver: orm
    class:
        model:
            comment: AppBundle\Entity\Comment
            thread: AppBundle\Entity\Thread

assetic:
    bundles: [ "FOSCommentBundle" ]

的routing.yml

app:
    resource: '@AppBundle/Controller/'
    type: annotation

fos_comment_api:
    type: rest
    resource: "@FOSCommentBundle/Resources/config/routing.yml"
    prefix: /api
    defaults: { _format: html }

实体: - Comment.php

<?php

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use FOS\CommentBundle\Entity\Comment as BaseComment;

/**
 * @ORM\Entity
 * @ORM\ChangeTrackingPolicy("DEFERRED_EXPLICIT")
 */
class Comment extends BaseComment
{
    /**
     * @ORM\Id
     * @ORM\Column(type="integer")
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * Thread of this comment
     *
     * @var Thread
     * @ORM\ManyToOne(targetEntity="AppBundle\Entity\Thread")
     */
    protected $thread;
}

Thread.php

<?php

namespace AppBundle\Entity;


use Doctrine\ORM\Mapping as ORM;
use FOS\CommentBundle\Entity\Thread as BaseThread;

/**
 * @ORM\Entity
 * @ORM\ChangeTrackingPolicy("DEFERRED_EXPLICIT")
 */
class Thread extends BaseThread
{
    /**
     * @var string $id
     *
     * @ORM\Id
     * @ORM\Column(type="string")
     */
    protected $id;
}

1 个答案:

答案 0 :(得分:1)

您所要做的就是安装资产包

作曲家需要 symfony / assetic-bundle 然后将其添加到appkernel

中的registerBundles
  
    

新的Symfony \ Bundle \ AsseticBundle \ AsseticBundle(),

  

并将其添加到config.yml

assetic:
   debug:          '%kernel.debug%'
   use_controller: '%kernel.debug%'
   filters:
        cssrewrite: ~