خطأ صغير لكني لا أرى أين - مفاتيح Symfony Foreign

0

مرحبًا ، لديّ خطأ (أعتقد أنني أفعل خطأً أحمقًا حقًا لكنني لا أرى ذلك) أحاول إضاعة الوقت وأسألك السؤال. الخطأ هو أن مفاتيحي الخارجية قد تم تشكيلها بشكل غير صحيح. لا يمكن أن يكون أكثر دقة ... شكرا لجميع الأشخاص الذين سيحاولون الإجابة أو البحث: ص

UserInterestEntity الخاص بي:

/**
* UserInterest
*
* @ORM\Table(name="user_interest", indexes {@ORM\Index(name="userInterest_category_id_fk", columns={"category_id"})})
* @ORM\Entity
*/
class UserInterest
{

/**
 * @var \AppBundle\Entity\Category
 *
 * @ORM\Id
 * @ORM\ManyToOne(targetEntity="Category")
 * @ORM\JoinColumns({
 *   @ORM\JoinColumn(name="category_id", referencedColumnName="id")
 * })
 */
 private $category;
 }

كياني الفئة:

/**
* UserInterest
*
* @ORM\Table(name="Category", uniqueConstraints {@ORM\UniqueConstraint(name="category_id_uindex", columns={"id"})})
* @ORM\Entity
*/
class Category
{
/**
 * @var integer
 *
 * @ORM\Column(name="id", type="integer", nullable=false)
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="IDENTITY")
 * @ORM\OneToOne(targetEntity="UserInterest", inversedBy="Category")
 */
protected $id;

الخطأ هو أنه عندما أفعل: عقيدة php bin / console: المخطط: التحديث - force tat يخبرني: تم تشكيل قيد المفتاح الخارجي بشكل غير صحيح

1 إجابة

1
افضل جواب

يجب ألا يتم ربط العلاقة بالمعرف ولكن على خاصية منفصلة. في فئة الفئة ، يمكنك إنشاء خاصية userIntrests لتعريف userIntrests التي تحتوي على هذه الفئة. في المثال:

class Category
{
    /**
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id()
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id;

    /**
     * @ORM\OneToMany(targetEntity="UserInterest", mappedBy="category")
     */
    protected $intrests;
}

class UserIntrest
{
   /**
     * @ORM\Column(name="id", type="integer", nullable=false)
     * @ORM\Id()
     * @ORM\GeneratedValue(strategy="AUTO")
     */
    protected $id

    /**

     * @ORM\ManyToOne(targetEntity="Category", inversedBy="intrests")
     */
    protected $category;
}

استخدم هذا كمرجع https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/associ-mapping.html#one-to-many-bidirectional

:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام