Слизняк с множественными отношениями

У меня есть три лица, скажем A, B а также C, A владеет двумя отношениями ManyToOne с B и к C, Я хочу создать слизняк для Aсостоит из поля A.a, B.b а также C.c,
На данный момент, я мог бы создать слизняк с A.a а также B.bс этим кодом:

Класс А:

<?php

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;

/**
* @ORM\Entity(
*     repositoryClass="AppBundle\Repository\ARepository"* )
*/
class A
{
/**
* @var integer
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue
*/
private $id;

/**
* @var string
* @ORM\Column(type="string")
*/
private $name;

/**
* @var B
* @ORM\ManyToOne(targetEntity="B")
*/
private $b;

/**
* @var C
* @ORM\ManyToOne(targetEntity="C")
*/
private $c;

/**
* @var string
* @ORM\Column(type="string", unique=true)
* @Gedmo\Slug(handlers={
*      @Gedmo\SlugHandler(class="Gedmo\Sluggable\Handler\RelativeSlugHandler", options={
*          @Gedmo\SlugHandlerOption(name="relationField", value="name"),
*          @Gedmo\SlugHandlerOption(name="relationSlugField", value="alias"),
*          @Gedmo\SlugHandlerOption(name="separator", value="-")
*      })
* }, separator="-", updatable=true, fields={"name"})
*/
private $slug;

// ...

}

Класс Б:

<?php

use Doctrine\ORM\Mapping as ORM;
use Gedmo\Mapping\Annotation as Gedmo;

/**
* @ORM\Entity(
*     repositoryClass="AppBundle\Repository\BRepository"* )
*/
class B
{
/**
* @var integer
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue
*/
private $id;

/**
* @var string
* @ORM\Column(type="string")
*/
private $name;

/**
* @var string
* @ORM\Column(type="string")
* @Gedmo\Slug(handlers={
*      @Gedmo\SlugHandler(class="Gedmo\Sluggable\Handler\InversedRelativeSlugHandler", options={
*          @Gedmo\SlugHandlerOption(name="relationClass", value="AppBundle\Entity\A"),
*          @Gedmo\SlugHandlerOption(name="mappedBy", value="b"),
*          @Gedmo\SlugHandlerOption(name="inverseSlugField", value="slug")
*      })
* }, fields={"name"})
*/
private $alias;

//...

}

С этим кодом слизняк A.slug это что-то вроде {{B.alias}}-{{A.name}}, Я хочу чтобы это было {{C.alias}}-{{B.alias}}-{{A.name}}, Я пытался добавить еще SlugHander в handlers опция массива Gedmo\Slug, но он проигнорировал второй. Как я могу это сделать?

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]