【问题标题】:How to Reduce Code Duplication in Symfony2如何减少 Symfony2 中的代码重复
【发布时间】:2014-11-05 15:03:48
【问题描述】:

我有 3 个“主要”实体:TypeATypeB 通过多对一关系链接到 User

我有 2 个“次要”实体:UserTypeAUserTypeB,它们包含多对一关系的属性(例如,用户分配给产品的评论A型)。这两个实体及其存储库是相似的(除了一个链接到 TypeA,另一个链接到 TypeB)。

这是我的代码的一部分:

public function typea_commentAction(TypeA $typea)
{
   $user = $this->getUser();
   $userTypeA = $this->getDoctrine()
                      ->getManager()
                      ->getRepository('GamUserBundle:UserTypeA')
                      ->getComment($user, $typea);

   //...
}

public function typeb_commentAction(TypeB $typeb)
{
   $user = $this->getUser();
   $userTypeB = $this->getDoctrine()
                      ->getManager()
                      ->getRepository('GamUserBundle:UserTypeB')
                      ->getComment($user, $typeb);

   //...
}

如您所见,我需要复制每个操作以使它们与每个实体一起使用。有没有办法结合这些动作?关于辅助实体及其存储库的相同问题。

谢谢。

【问题讨论】:

    标签: php symfony code-duplication


    【解决方案1】:

    创建一个服务类来执行逻辑并将用户类型作为参数。

    【讨论】:

    • 谢谢。这正是我所需要的。
    猜你喜欢
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多