Search code examples
php-7symfony-3.2symfony-3.3

FosCommentBundle assetic exception to Symfony3


I'm trying to use FosCommentBundle to Symfony3.

I complete all steps for installation with documentation of bundle.

I add AppKernel infos and created database, updated schemas and added Jquery3.

But when i try to check index.html.twig it gives following error.

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").

my 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 }

Entities: - 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;
}

Solution

  • All you have to do is to install the assetic bundle.

    composer requires symfony/assetic-bundle and then add this to registerBundles in appkernel

    new Symfony\Bundle\AsseticBundle\AsseticBundle(),

    and add this to config.yml

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