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;
}
}


