首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >教义收藏请求与收藏形式

教义收藏请求与收藏形式
EN

Stack Overflow用户
提问于 2015-10-06 19:48:40
回答 1查看 36关注 0票数 0

首先,感谢您的帮助。

这是我的实体:

代码语言:javascript
复制
class Salon { 
/**
 * @ORM\ManyToMany(targetEntity="Screenfony\DemoBundle\Entity\Exposant", cascade={"persist"})
 */
private $exposants;

第二个:

代码语言:javascript
复制
class Exposant{
/**
 * @var integer
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;

我想为一个展示者创建一个表单,他将能够看到他的沙龙的集合(添加和删除一些)。

首先,我坚持要求得到一个曝光者的所有沙龙。我试过了,但不起作用:

代码语言:javascript
复制
    $exposant = $this   ->getDoctrine()
                      ->getManager()
                      ->getRepository('ScreenfonyDemoBundle:Exposant')
                      ->findOneBy(array('user' => $id)); 

    $exposant_id = $exposant->getId();

    $salons = $this ->getDoctrine()
                    ->getManager()
                    ->getRepository('ScreenfonyDemoBundle:Salon');

    $my_salons = new \Doctrine\Common\Collections\ArrayCollection(); 

    foreach ($salons as $salon) {
        if($salon->getExposants()->contains($exposant_id)){
            $mes_salons->add($salon);
        }
    }

然后我想将结果添加到表单中,并使用曝光者的新沙龙处理请求。

感谢你的帮助

EN

回答 1

Stack Overflow用户

发布于 2015-10-07 23:46:33

在您的类exposant中,它缺少创建中间表exposant_salon的多对多关系:

代码语言:javascript
复制
class Exposant{
/**
 * @var integer
 *
 * @ORM\Column(name="id", type="integer")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="AUTO")
 */
private $id;

/**
 * @ORM\ManyToMany(targetEntity="Screenfony\DemoBundle\Entity\salon", inversedBy="exposants", cascade={"persist"})
 * @ORM\JoinTable(name="exposant_salon",
 *      joinColumns={@ORM\JoinColumn(name="id_exposant", referencedColumnName="id")},
 *      inverseJoinColumns={@ORM\JoinColumn(name="id_salon", referencedColumnName="id")}
 * )
 */
private $salons;

在实体exposant中创建方法getSalons()后:

代码语言:javascript
复制
public function getSalons()
{
    return $this->salons;
}

要恢复暴露的沙龙,请执行以下操作:

代码语言:javascript
复制
$my_salons = $exposant->getSalons();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32969174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档