FOSCommentBundle如何实现

FOSCommentBundle how to implement

有没有一些例子可以实现这个?不要在我的页面上显示任何内容。

{% include 'FOSCommentBundle:Thread:async.html.twig' with {'id': 'foo'} %} 

我不明白如何放置此代码以及将在我的页面上显示什么。

当我把它放在我的 config.yml

    assetic:
         bundles: [ "FOSCommentBundle" ]   

创建错误:

无法识别 "fos_comment" 下的选项 "assetic"。

我的配置:

fos_comment: db_driver: 表格 class: 模型: 评论:BackEndBundle\Entity\Comment 线程:BackEndBundle\Entity\Thread

资产: 捆绑包:[ "FOSCommentBundle" ]

我假设你已经配置了包并创建了这样的需求类

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像这样

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

在你的 config.yml 中,你现在会有这样的东西

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

运行以下命令

doctrine:cache:clear-metadata
doctrine:schema:update --force

在此之后,您将在数据库中拥有实体表 现在将其包含在模板顶部

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>

你在哪里包含这个

{% include 'FOSCommentBundle:Thread:async.html.twig' with {'id': 'foo'} %}

完成此步骤后清除开发和产品缓存。 PS:我选择了学说ORM方法