Когда я пытаюсь сохранить значения в DB с помощью symfony через доктрину, doctrine создает NULL для поля, хотя он установлен, и я понятия не имею, почему.Doctrine генерирует NULLinstead установленного значения
Entity: https://github.com/Invis00/pub/blob/master/OldbCompetitionstage.php
Controller Test:
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 Profiler говорит:
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? echo говорит мне, что это 2.
Кажется, что информация о сопоставлении для соревнований является чем-то вроде причины такого поведения, но ошибок нет, и я не вижу проблемы с ним.
@Veve совершенно правильно, вы не можете ни определить 'joinColumn 'как член вашего класса и не устанавливайте его значение как простой столбец с ORM или без него. Удалите это свойство или ассоциацию. – chalasr