He buscado en Google pero me aparece como crear la relación many to many, pero eso ya lo tengo:
Código:
<?php namespace Compartida\CompartidaBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="adcategory") */ class Adcategory { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ protected $id; /** * @ORM\Column(name="name", type="string", length=255) */ protected $name; /** * @ORM\Column(type="boolean") */ protected $show; /** * Get id * * @return integer */ public function getId() { return $this->id; } /** * Set name * * @param string $name * @return Adcategory */ public function setName($name) { $this->name = $name; return $this; } /** * Get name * * @return string */ public function getName() { return $this->name; } /** * Set show * * @param boolean $show * @return Adcategory */ public function setShow($show) { $this->show = $show; return $this; } /** * Get show * * @return boolean */ public function getShow() { return $this->show; } }
Código:
<?php namespace Compartida\CompartidaBundle\Entity; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="adsite") * @ORM\HasLifecycleCallbacks() */ class Adsite { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ protected $id; /** * @ORM\ManyToMany(targetEntity="Adcategory") * @ORM\JoinTable(name="ad_category", * joinColumns={@ORM\JoinColumn(name="ad_id", referencedColumnName="id")}, * inverseJoinColumns={@ORM\JoinColumn(name="category_id", referencedColumnName="id")} * ) */ protected $category; /** * @ORM\ManyToOne(targetEntity="Username") * @ORM\JoinColumn(name="user_id", referencedColumnName="id") */ protected $username; /** * @ORM\Column(type="string") */ protected $name; /** * @ORM\Column(type="string") */ protected $lastname; /** * @ORM\Column(type="string") */ protected $title; /** * @ORM\ManyToOne(targetEntity="Adsitetype") * @ORM\JoinColumn(name="type_id", referencedColumnName="id") */ protected $type; /** * @ORM\Column(type="text") */ protected $description; /** * @ORM\Column(type="decimal", scale=2) */ protected $price; /** * @ORM\Column(type="string") */ protected $email; /** * @ORM\Column(type="string") */ protected $telephone; /** * @ORM\Column(type="string") */ protected $city; // protected $images; /** * @ORM\Column(type="boolean") */ protected $approved; /** * @ORM\Column(type="datetime") */ protected $created; /** * @ORM\Column(type="datetime") */ protected $updated; public function getDescription($length = null) { if (false === is_null($length) && $length > 0) return substr($this->description, 0, $length); else return $this->description; } /** * Constructor */ public function __construct() { $this->category = new \Doctrine\Common\Collections\ArrayCollection(); } /** * Get id * * @return integer */ public function getId() { return $this->id; } /** * Set name * * @param string $name * @return Adsite */ public function setName($name) { $this->name = $name; return $this; } /** * Get name * * @return string */ public function getName() { return $this->name; } /** * Set lastname * * @param string $lastname * @return Adsite */ public function setLastname($lastname) { $this->lastname = $lastname; return $this; } /** * Get lastname * * @return string */ public function getLastname() { return $this->lastname; } /** * Set title * * @param string $title * @return Adsite */ public function setTitle($title) { $this->title = $title; return $this; } /** * Get title * * @return string */ public function getTitle() { return $this->title; } /** * Set description * * @param string $description * @return Adsite */ public function setDescription($description) { $this->description = $description; return $this; } /** * Set price * * @param float $price * @return Adsite */ public function setPrice($price) { $this->price = $price; return $this; } /** * Get price * * @return float */ public function getPrice() { return $this->price; } /** * Set email * * @param string $email * @return Adsite */ public function setEmail($email) { $this->email = $email; return $this; } /** * Get email * * @return string */ public function getEmail() { return $this->email; } /** * Set telephone * * @param string $telephone * @return Adsite */ public function setTelephone($telephone) { $this->telephone = $telephone; return $this; } /** * Get telephone * * @return string */ public function getTelephone() { return $this->telephone; } /** * Set city * * @param string $city * @return Adsite */ public function setCity($city) { $this->city = $city; return $this; } /** * Get city * * @return string */ public function getCity() { return $this->city; } /** * Set approved * * @param boolean $approved * @return Adsite */ public function setApproved($approved) { $this->approved = $approved; return $this; } /** * Get approved * * @return boolean */ public function getApproved() { return $this->approved; } /** * Set created * * @param \DateTime $created * @return Adsite */ public function setCreated($created) { $this->created = $created; return $this; } /** * Get created * * @return \DateTime */ public function getCreated() { return $this->created; } /** * Set updated * * @param \DateTime $updated * @return Adsite */ public function setUpdated($updated) { $this->updated = $updated; return $this; } /** * Get updated * * @return \DateTime */ public function getUpdated() { return $this->updated; } /** * Add category * * @param \Compartida\CompartidaBundle\Entity\Adcategory $category * @return Adsite */ public function addCategory(\Compartida\CompartidaBundle\Entity\Adcategory $category) { $this->category[] = $category; return $this; } /** * Remove category * * @param \Compartida\CompartidaBundle\Entity\Adcategory $category */ public function removeCategory(\Compartida\CompartidaBundle\Entity\Adcategory $category) { $this->category->removeElement($category); } /** * Get category * * @return \Doctrine\Common\Collections\Collection */ public function getCategory() { return $this->category; } /** * Set username * * @param \Compartida\CompartidaBundle\Entity\Username $username * @return Adsite */ public function setUsername(\Compartida\CompartidaBundle\Entity\Username $username = null) { $this->username = $username; return $this; } /** * Get username * * @return \Compartida\CompartidaBundle\Entity\Username */ public function getUsername() { return $this->username; } /** * Set type * * @param \Compartida\CompartidaBundle\Entity\Adsitetype $type * @return Adsite */ public function setType(\Compartida\CompartidaBundle\Entity\Adsitetype $type = null) { $this->type = $type; return $this; } /** * Get type * * @return \Compartida\CompartidaBundle\Entity\Adsitetype */ public function getType() { return $this->type; } }