我假设您已经配置了捆绑包并创建了像这样的需要类
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'} %}
在此步骤之后清除 dev 和 prod 缓存。PS:我选择了学说ORM方法