У меня есть связь многие-к-одному в моей сущности, и я хочу взять другое поле, чтобы поместить значение в таблицу базы данных вместо поля заголовка.
Мои многие категории, которые могут быть установлены для продукта.это все работает отлично.Однако у меня есть дополнительное поле кода продукта, где я хочу получить букву категории вместо заголовка.
сущность моей категории
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Symfony\Component\HttpFoundation\File\File;
use Vich\UploaderBundle\Mapping\Annotation as Vich;
use Symfony\Component\Validator\Constraints as Assert;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity()
* @ORM\HasLifecycleCallbacks()
*/
class Category
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="title", type="string")
*/
private $title;
/**
* @var string
*
* @ORM\Column(name="categoryletter", type="string")
*/
private $categoryletter;
public function getId(): ?int
{
return $this->id;
}
public function getTitle(): ?string
{
return $this->title;
}
public function setTitle(string $title): self
{
$this->title = $title;
return $this;
}
public function getCategoryletter(): ?string
{
return $this->categoryletter;
}
public function setCategoryletter(string $categoryletter): self
{
$this->categoryletter = $categoryletter;
return $this;
}
/**
* @return string
*/
public function __toString()
{
return $this->title;
}
}
в моей сущности product.php у меня есть следующий код
/**
* @var Category
*
* @ORM\ManyToOne(targetEntity="Category")
* @ORM\JoinColumn(name="category_id", referencedColumnName="id")
*/
private $category;
, где у меня есть дополнительное поле для установки на основе частичного кода товарана категорию и т. д., но я не хочу заголовок категории, а связанный с ней буклет категории
/**
* @ORM\PrePersist
* @ORM\PreUpdate
*/
public function setProductcode()
{
{
$part = $this->category;
$this->productcode = $part;
}
Я не знаю, как получить другое поле объекта категории.Если я изменяю функцию __toString на categoryletter вместо title, я получаю букву, но я хочу придерживаться поля title только для общего назначения. Как мне получить поле categoryletter?или это невозможно напрямую?