【发布时间】:2018-11-11 09:16:21
【问题描述】:
我正在使用 symfony 3.3:
我需要将 @Groups 注释添加到 slug 字段(使用 ORMBehaviors\Sluggable\Sluggable 创建),以便我可以通过我将在组中指定的其他实体传递此字段。 我该怎么做?
这是实体“foo”:
/**
* @var int
*
* @ORM\Id
* @ORM\GeneratedValue
* @ORM\Column(type="integer")
*
* @Groups({"advertisingSpace"})
*/
private $id;
/**
* @var string
*
* @ORM\Column(type="string", length=4)
*
* @Groups({"advertisingSpace"})
*/
private $code;
/**
* @var string
*
* @ORM\Column(type="string", length=255)
*
* @Groups({"advertisingSpace"})
*/
private $description;
/**
* @Vich\UploadableField(mapping="advertisingspacecategory_icon", fileNameProperty="icon")
*
* @var File
*/
private $iconFile;
/**
* @var string
*
* @ORM\Column(type="string", length=255)
*
* @Groups({"advertisingSpace"})
*/
private $icon;
/**
* @var array
*
* @ORM\OneToMany(
* targetEntity="AppBundle\Entity\AdvertisingSpace",
* mappedBy="category"
* )
*/
private $advertisingSpaces;
/**
* @return int
*/
public function getId()
{
return $this->id;
}
/**
* @return string
*/
public function getIcon()
{
return $this->icon;
}
/**
* @param string $icon
*
* @return AdvertisingSpaceCategory
*/
public function setIcon($icon)
{
$this->icon = $icon;
return $this;
}
/**
* @param File|\Symfony\Component\HttpFoundation\File\UploadedFile $iconFile
*
* @return AdvertisingSpaceCategory
*/
public function setIconFile(File $iconFile = null)
{
$this->iconFile = $iconFile;
if ($iconFile) {
$this->updatedAt = new \DateTimeImmutable();
}
return $this;
}
/**
* @return File|null
*/
public function getIconFile()
{
return $this->iconFile;
}
/**
* @param int $id
*
* @return AdvertisingSpaceCategory
*/
public function setId($id)
{
$this->id = $id;
return $this;
}
/**
* @return string
*/
public function getCode()
{
return $this->code;
}
/**
* @param string $code
*
* @return AdvertisingSpaceCategory
*/
public function setCode($code)
{
$this->code = $code;
return $this;
}
/**
* @return array
*/
public function getAdvertisingSpaces()
{
return $this->advertisingSpaces;
}
/**
* @param array $advertisingSpaces
*
* @return AdvertisingSpaceCategory
*/
public function setAdvertisingSpaces($advertisingSpaces)
{
$this->advertisingSpaces = $advertisingSpaces;
return $this;
}
/**
* @return string
*/
public function getDescription()
{
return $this->description;
}
/**
* @param string $description
*
* @return $this
*/
public function setDescription($description)
{
$this->description = $description;
return $this;
}
/**
* @return array
*/
public function getSluggableFields()
{
return [ 'slug' ];
}
/**
* @param string $values
*
* @return string
*/
public function generateSlugValue($values)
{
return implode('-', $values);
}
没有私有 slug 声明,因为我可以将 @groups 注释归因于?
【问题讨论】:
标签: php symfony annotations entity slug