最佳实践:Symfony评论

时间:2015-03-02 07:21:07

标签: symfony interface architecture

在我的应用程序中,我必须允许我的用户评论两种实体:食谱和新闻。

我想知道这样做的最佳做法是什么。 我在Comment对象中手动管理的ref_id(整数)和ref(字符串)的Comment对象,或者我的实体与@ManyToMany(targetEntoty =“MyInterfaceHere”)之间的通信接口?

感谢您的回答

1 个答案:

答案 0 :(得分:0)

如果食谱和新闻扩展抽象类

,那么一个好的实现就是好的
use Doctrine\ORM\Mapping\MappedSuperclass;

/**
 * Abstract base class
 *
 * @MappedSuperclass
 */
abstract class EntityWithComments {
   /**
   *
   *@ORM(many-to-bla)
   */
   private $comments;
   public function addComment(){...};
   public function removeComment(){...};
   public function getComments(){...};
   ... 

并且您的课程扩展了它,例如Recipe:

class Recipe extends EntityWithComments { ...

所以这样你可以

$recipe->addComment($comment);
$news->addComment($comment);

直截了当......