當我嘗試通過教義將值存儲到數據庫與symfony時,doctrine產生一個字段的NULL雖然它已設置,我不知道爲什麼。學說生成NULL而不是設定值
實體: https://github.com/Invis00/pub/blob/master/OldbCompetitionstage.php
測試控制器:
public function compTest(){
$em = $this->getDoctrine()->getManager();
$object = new OldbCompetitionstage();
$object->setName("name");
$object->setNr(2);
$object->setOldbCompetitionid(2);
// Echo tells 2
echo $object->getOldbCompetitionid();
$em->persist($object);
$em->flush();
return $this->render('base.html.twig', array("current" => "pubmin")
);
}
表:
compstageID int(11)
name varchar(100)
nr int(11)
oldb_competitionID int(11)
startDate datetime
ipub_compstageID int(11)
Symfony的探查告訴:
INSERT INTO oldb_competitionstage (name, nr, oldb_competitionID, startDate, ipub_compstageID) VALUES (?, ?, ?, ?, ?)
Parameters: { 1: name, 2: 2, 3: null, 4: null, 5: null }
但爲什麼oldb_competitionid是NULL而不是2? 回聲告訴我它是2.
似乎競爭的映射信息是某種形式的原因這種行爲,但沒有錯誤告訴,我沒有看到它的問題。
@Veve是完全正確的,你不能既定義'joinColumn '作爲您班級的成員,也不會將其值設置爲簡單列,無論是否帶有ORM。刪除此屬性或關聯。 – chalasr