Ответ 1
Я думаю, вы хотели использовать @ORM\OneToOne
вместо этого...
/**
* @ORM\OneToOne(targetEntity="Productss")
* @ORM\JoinColumn(name="products_id", referencedColumnName="id")
*/
private $products;
//...
}
У меня есть таблица с продуктами и другая таблица с Notes. В каждом продукте могут быть или нет заметки. Мне нужны только заметки, чтобы знать, к какому продукту они относятся, но продукт не знает о своих заметках. Я думаю, что это должен быть мой код:
namespace EM\MyBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use EM\MyBundle\Entity\Productss;
/**
* @ORM\Entity
* @ORM\Table(name="notes")
*/
class Notess
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @OneToOne(targetEntity="Productss")
* @JoinColumn(name="products_id", referencedColumnName="id")
**/
private $products;
//...
}
namespace EM\MyBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity
* @ORM\Table(name="domains")
*/
class Domains
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
// ...
}
но он дает ошибку: [Doctrine\Common\Annotations\AnnotationException]
[Семантическая ошибка] Аннотация "@OneToOne" в свойстве EM\MyBundle \ Объект \Notes:: $никогда не импортировался. Возможно, вы забыли добавить "использование" для этой аннотации?
Не могли бы вы помочь мне исправить это?
Я думаю, вы хотели использовать @ORM\OneToOne
вместо этого...
/**
* @ORM\OneToOne(targetEntity="Productss")
* @ORM\JoinColumn(name="products_id", referencedColumnName="id")
*/
private $products;
//...
}