我已經實現了一個基於Symfony 3.1的論壇軟件包Discutea/DForumBundle,並且希望增強功能併爲其添加功能。我到目前爲止嘗試過How to Override any Part of a Bundle;覆蓋視圖和語言包是可能的,但我也希望能夠添加新的實體並添加新的控制器。Symfony 3.1:如何擴展symfony包的實體?
在FOSUserBundle
的情況下,這是可能的,因爲我們可以擴展用戶實體並將我們的自定義首選項添加到其中,以便進行調整。什麼是實現這種捆綁的最佳方式?
任何提示或幫助,將不勝感激。
====== ADDED詳情======
我認爲延長實體應該夠我,因爲我只想增加像觀看次數的增加,所有一些新的領域。所以以下是我的新擴展實體:
<?php
namespace AppBundle\Entity;
use Discutea\DForumBundle\Entity\Model\BasePost;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity
* @ORM\Entity(repositoryClass="AppBundle\Repository\ForumPostRepository")
* @ORM\Table(name="df_post")
*/
class ForumPost extends BasePost
{
/**
* @ORM\Column(type="integer")
* @ORM\Column(name="views_count", type="integer", nullable=true)
*/
protected $viewCounts = 0;
/**
* Set viewCounts
*
* @param integer $viewCounts
*
* @return ForumPost
*/
public function setViewCounts($viewCounts)
{
$this->viewCounts = $viewCounts;
return $this;
}
/**
* Get viewCounts
*
* @return integer
*/
public function getViewCounts()
{
return $this->viewCounts;
}
}
在此之後,我嘗試使用控制檯進行模式更新;但我得到了以下錯誤消息:
[主義\ DBAL \架構\ SchemaException該名稱爲 「my_database.df_post」表已經存在。
如何解決這個問題並更新我現有的模式?在此之後,我打算擴展其他實體。
關於什麼我試過到目前爲止,我還添加細節。有什麼建議麼? – Ren