Я только что начал объектно-ориентированное программирование в Symfony 2, и у меня возникла проблема с объединением таблиц mysql.Присоединиться к таблице в Symfony 2
У меня есть две таблицы:
kommuner: идентификатор, имя, емкость
Деятельность: идентификатор, имя, kommune_id
Как соединить эти таблицы в файлы сущностей?
Это моя функция контроллера по умолчанию:
public function aktiviteterAction()
{
$em = $this->get('doctrine.orm.default_entity_manager');
$aktiviteter = $em->getRepository(Aktiviteter::class)->findAll();
return $this->render('default/aktiviteter.html.twig', [
'aktiviteter' => $aktiviteter,
]);
}
и это моя сущность, Kommune.php:
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Kommune
*/
class Kommune
{
/**
* @var integer
*/
private $id;
/**
* @var string
*/
private $name;
/**
* @var integer
*/
private $capacity;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set name
*
* @param string $name
* @return Kommune
*/
public function setName($name)
{
$this->name = $name;
return $this;
}
/**
* Get name
*
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Set capacity
*
* @param integer $capacity
* @return Kommune
*/
public function setCapacity($capacity)
{
$this->capacity = $capacity;
return $this;
}
/**
* Get capacity
*
* @return integer
*/
public function getCapacity()
{
return $this->capacity;
}
}
и это мое Aktiviteter.php лицо:
<?php
namespace AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Aktiviteter
*/
class Aktiviteter
{
/**
* @var integer
*/
private $id;
/**
* @var string
*/
private $name;
/**
* @var integer
*/
private $kommuneId;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set name
*
* @param string $name
* @return Aktiviteter
*/
public function setName($name)
{
$this->name = $name;
return $this;
}
/**
* Get name
*
* @return string
*/
public function getName()
{
return $this->name;
}
/**
* Set kommuneId
*
* @param integer $kommuneId
* @return Aktiviteter
*/
public function setKommuneId($kommuneId)
{
$this->kommuneId = $kommuneId;
return $this;
}
/**
* Get kommuneId
*
* @return integer
*/
public function getKommuneId()
{
return $this->kommuneId;
}
/**
* @ManyToOne(targetEntity="Kommune")
* @JoinColumn(name="kommune_id", referencedColumnName="id")
**/
private $kommune;
}
Может кто-нибудь объяснить, как эти таблицы объединяются в Symfony 2? Я ценю все виды помощи!
Вы добавили объект Kommune 2 раза. –
Хорошая точка! См. Edit –
Вы читаете документы, которые я опубликовал в своем ответе? Если вам нужна помощь в выборе правильного типа ассоциации, вам необходимо обновить свой вопрос, добавив некоторую информацию о взаимоотношениях между этими объектами (что представляют собой эти сущности и как они взаимодействуют друг с другом). –