이것은 참조하려는 관련 객체가 있지만 인스턴스화되지 않은 기본 객체입니다. 내가 뭘 잘못하고 있는지 모르겠다.Symfony3 - Doctrine 관련 객체가 채워지지 않음
나는 개체 MARKET 및 VENDOR와 일대일로 연관되어 있습니다. 시장에는 여러 공급 업체가 있으며 공급 업체에는 하나의 시장 만 있습니다. 공급 업체를로드 할 때 시장 객체를 얻으려고합니다.
class Vendor
{
/**
* @ORM\ManyToOne(targetEntity="Expedient\PurchaseBundle\Entity\Market", inversedBy="vendors")
* @ORM\JoinColumn(name="market_id", referencedColumnName="id", nullable=true, onDelete="SET NULL")
*/
private $market;
/**
* @var int
*
* @ORM\Column(name="market_id", type="integer", nullable=true)
*/
private $marketId;
...
/**
* Set market
*
* @param \Expedient\PurchaseBundle\Entity\Market $market
*
* @return Market
*/
public function setMarket(\Expedient\PurchaseBundle\Entity\Market $market = null)
{
$this->market = $market;
return $this;
}
/**
* Get market
*
* @return \Expedient\PurchaseBundle\Entity\Market
*/
public function getMarket()
{
return $this->market;
}
Vendor 개체를 찾을 때 시장이 설정되지 않은 것으로 나타났습니다. marketId가 있지만 시장 객체는 포함되어 있지 않습니다.
"vendor" => Vendor {#117 ▼
-market: null
-id: "11"
-name: "A-Air Company"
-account: ""
-attn: "Rege Dumm/John Matthews"
-address1: "206 Overlook Drive"
-address2: ""
-city: "Sewickley"
-state: "PA"
-zip: "15143"
-country: "USA"
-phone: "412-741-9420"
-cellPhone: null
-fax: "412-749-8590"
-tag: "A-Air Company"
-active: true
-email: "[email protected]; [email protected]"
-securityAgreement: true
-securityAgreementDate: DateTime {#114 ▶}
-insuranceCert: true
-insuranceCertDate: null
-marketId: 1
}
시장 클래스가 존재하고 설정 역이 있습니다
<?php
namespace Expedient\PurchaseBundle\Entity;
/**
* Market
*/
class Market
{
/**
* @var integer
*/
private $id;
/**
* @ORM\OneToMany(targetEntity="Vendor", mappedBy="market")
*/
protected $vendors;
public function __construct()
{
$this->vendors = new ArrayCollection();
}
}
확실하지 나는이 잘못 갈 수 있습니다. Symfony 3를 처음 사용했습니다.