2017-06-11 16 views
0

次のように私は2つのエンティティを持って次のようにsymfonyの3.3スキーマ検証エラー

<?php 
// src/coreBundle/Entity/model.php 
namespace coreBundle\Entity; 
use Doctrine\ORM\Mapping as ORM; 
use coreBundle\Entity\brand; 

/** 
*@ORM\Entity 
*@ORM\Table(name="model") 
*/ 
class model 
{ 
    /** 
    * @ORM\ManyToOne(targetEntity="coreBundle\Entity\brand", inversedBy="models") 
    * @ORM\JoinColumn(name="brand_id", referencedColumnName="id") 
    */ 
    private $brands; 


    /** 
* @ORM\Column(type="integer") 
* @ORM\Id 
* @ORM\GeneratedValue(strategy="AUTO") 
*/ 
    public $id; 

/** 
    *@ORM\Column(type="integer") 
    */ 
    public $brand_id; 


    /** 
    *@ORM\Column(type="string", length=100) 
    */ 
    private $name; 

    /** 
    *@ORM\Column(type="string", length=100) 
    */ 
    private $image_url; 

    /** 
    *@ORM\Column(type="string", length=200) 
    */ 
    private $comment; 

    /** 
    * Get id 
    * 
    * @return integer 
    */ 
    public function getId() 
    { 
     return $this->id; 
    } 

    /** 
    * Set brandId 
    * 
    * @param integer $brandId 
    * 
    * @return model 
    */ 
    public function setBrandId($brandId) 
    { 
     $this->brand_id = $brandId; 

     return $this; 
    } 

    /** 
    * Get brandId 
    * 
    * @return integer 
    */ 
    public function getBrandId() 
    { 
     return $this->brand_id; 
    } 

    /** 
    * Set name 
    * 
    * @param string $name 
    * 
    * @return model 
    */ 
    public function setName($name) 
    { 
     $this->name = $name; 

     return $this; 
    } 

    /** 
    * Get name 
    * 
    * @return string 
    */ 
    public function getName() 
    { 
     return $this->name; 
    } 

    /** 
    * Set imageUrl 
    * 
    * @param string $imageUrl 
    * 
    * @return model 
    */ 
    public function setImageUrl($imageUrl) 
    { 
     $this->image_url = $imageUrl; 

     return $this; 
    } 

    /** 
    * Get imageUrl 
    * 
    * @return string 
    */ 
    public function getImageUrl() 
    { 
     return $this->image_url; 
    } 

    /** 
    * Set comment 
    * 
    * @param string $comment 
    * 
    * @return model 
    */ 
    public function setComment($comment) 
    { 
     $this->comment = $comment; 

     return $this; 
    } 

    /** 
    * Get comment 
    * 
    * @return string 
    */ 
    public function getComment() 
    { 
     return $this->comment; 
    } 



    /** 
    * Set brands 
    * 
    * @param \coreBundle\Entity\brand $brands 
    * 
    * @return model 
    */ 
    public function setBrands(\coreBundle\Entity\brand $brands = null) 
    { 
     $this->brands = $brands; 

     return $this; 
    } 

    /** 
    * Get brands 
    * 
    * @return \coreBundle\Entity\brand 
    */ 
    public function getBrands() 
    { 
     return $this->brands; 
    } 
} 

2つ目は、次のとおりです。

<?php 
// src/coreBundle/Entity/brand.php 
namespace coreBundle\Entity; 
use Doctrine\ORM\Mapping as ORM; 
use coreBundle\Entity\model; 
use Doctrine\Common\Collections\ArrayCollection; 

/** 
*@ORM\Entity 
*@ORM\Table(name="brand") 
*/ 
class brand 
{ 
    /** 
    * ORM\OneToMany(targetEntity="coreBundle\Entity\model", mappedBy="brands") 
    */ 
    private $models; 
    public function __construct() 
    { 
     $this->models = new ArrayCollection(); 
    } 

    /** 
* @ORM\Column(type="integer") 
* @ORM\Id 
* @ORM\GeneratedValue(strategy="AUTO") 
*/ 
public $id; 

    /** 
    *@ORM\Column(type="string", length=100) 
    */ 
    private $name; 



    /** 
    * Get id 
    * 
    * @return integer 
    */ 
    public function getId() 
    { 
     return $this->id; 
    } 

    /** 
    * Set name 
    * 
    * @param string $name 
    * 
    * @return brand 
    */ 
    public function setName($name) 
    { 
     $this->name = $name; 

     return $this; 
    } 

    /** 
    * Get name 
    * 
    * @return string 
    */ 
    public function getName() 
    { 
     return $this->name; 
    } 
} 

「モデル」、「ブランド」

とManyToOne関係を持っています

スキーマ検証の問題があります。

*関連coreBundle \エンティティ\モデル#ブランドが参照

存在しない逆側のフィールドcoreBundle \エンティティ\ブランド#モデルは、あなたは、私が間違って何をやっている事前に感謝を伝えることができます。

答えて

1

苦しみの3時間後にあなたの疑問が残る場合は、@@ORM\OneToMany(brand.php)にあります。

+0

ありがとうございます。 –