私はSymfony 3.1ベースのフォーラムバンドルDiscutea/DForumBundleを実装しており、機能を強化して追加したいと考えています。私はこれまでに試してみたHow to Override any Part of a Bundle;ビューと言語パックをオーバーライドすることは可能でしたが、新しいエンティティを追加して新しいコントローラを追加することもできます。symfony 3.1:symfonyバンドルのエンティティを拡張するには?
FOSUserBundle
の場合、これはユーザーエンティティを拡張してカスタム設定を追加することで可能になりました。この種のバンドルで同じことを達成する最良の方法は何でしょうか?
ヒントや助けていただければ幸いです。
====== ======に追加詳細情報を
私は私だけ再生回数と、すべてのようないくつかの新しいフィールドを追加するためのエンティティを拡張することは、私のために十分であるべきだと思います。したがって、以下は私の新しい拡張エンティティです:
<?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;
}
}
この後、私はコンソールでスキーマの更新を試みました。名前 を持つテーブル 'my_database.df_post' はすでに存在している[教義\ DBAL \スキーマ\ SchemaException]
:しかし、私は、次のエラーメッセージが表示されました。
これを克服して既存のスキーマを更新する方法を教えてください。その後、私は他のエンティティも拡張しようと考えています。
あなたは(
MyGuestEntity
)とGuestEntity
をオーバーライドすることを、コントローラ(複数可)に交換してください。助言がありますか? – Ren