我有两个实体:Type和Asset,您可以看到下面的定义。
为了在我的网络应用程序中显示资产列表,我需要生成一个资产名称,该名称是Type->name
和Asset->id
的串联(例如:cat-158或dog-15)
我刚刚向资产实体添加了一个方法getName()
,它获取类型名称并将其与资产id连接。有没有一种方法可以通过注释来实现这一点,以便在获取资产时使用连接语句来构建名称?基本上是资产实体上的一个属性,在提取资产时用正确的名称/id组合填充,而在调用getName()
时不提取类型?
<?php
class Asset
{
/**
* @ORMId
* @ORMGeneratedValue("IDENTITY")
* @ORMColumn(type="integer")
* @var integer
*/
private $id;
/**
* @ORMManyToOne(targetEntity="Type")
* @var Type
*/
private $type;
/**
* Constructs a name from the type and id
* @return string
*/
public function getName()
{
return $this->getType()->getName() . '-' . $this->getId();
}
// SNIP ...
}
class Type
{
/**
* @ORMId
* @ORMGeneratedValue("IDENTITY")
* @ORMColumn(type="integer")
* @var integer
*/
private $id;
/**
* @ORMColumn(type="string", length=200, unique=true, nullable=false)
* @var string
*/
private $name;
// SNIP ...
}
试试这个?
类别资产扩展类型{
}