Napotkałem problem z pobraniem atrybutów klasy "category" w klasie "product" gdy używam klasy subcategory.
Jak stworzyć relacje aby można było pobrać atrybut image z category i subcategory w klasie product.
klasa category
<?php namespace AppBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="category") */ class Category { /** * @ORM\Column(type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\OneToMany(targetEntity="Sybcategory", mappedBy="category") */ protected $category; /** * @ORM\Column(type="string", length=255, nullable=true) */ private $image; }
klasa subcategory
<?php namespace AppBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="subcategory") */ class Subcategory { /** * @ORM\Column(type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\ManyToOne(targetEntity="Category", inversedBy="category") */ private $category; /** * @ORM\Column(type="string", length=255, nullable=true) */ private $image; /** * @ORM\OneToMany(targetEntity="Product", mappedBy="product") */ protected $product; }
klasa product
<?php namespace AppBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="product") */ class Product { /** * @ORM\Column(type="integer") * @ORM\Id * @ORM\GeneratedValue(strategy="AUTO") */ private $id; /** * @ORM\ManyToOne(targetEntity="Subcategory", inversedBy="subcategory") */ private $subcategory; /** * @ORM\Column(type="string", length=255, nullable=true) */ private $description; }
setery i getery generowane automatycznie.
Klasy są przykładowe.