我有一个问题,我找不到原因..
我有一个这样的课程:
<?php
namespace Backend\EscuelaBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* CuotaEscuela
*
* @ORM\Table(name="cuotaescuela")
* @ORM\Entity
*/
class CuotaEscuela
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="descripcion", type="string", length=50)
*/
private $descripcion;
/**
* @var integer
*
* @ORM\Column(name="cantidad", type="integer")
*/
private $cantidad;
/**
* @var boolean
*
* @ORM\Column(name="cuotabase", type="boolean", nullable=true)
*/
private $cuotabase;
/**
* @var integer
*
* @ORM\ManyToOne(targetEntity="Backend\EscuelaBundle\Entity\Escuela", inversedBy="cuotas")
* @ORM\JoinColumn(name="escuela_id", referencedColumnName="id", onDelete="CASCADE")
*/
private $escuela;
public function __construct () {
$this->cuotabase = false;
}
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set descripcion
*
* @param string $descripcion
* @return CuotaEscuela
*/
public function setDescripcion($descripcion)
{
$this->descripcion = $descripcion;
return $this;
}
/**
* Get descripcion
*
* @return string
*/
public function getDescripcion()
{
return $this->descripcion;
}
/**
* Set cantidad
*
* @param integer $cantidad
* @return CuotaEscuela
*/
public function setCantidad($cantidad)
{
$this->cantidad = $cantidad;
return $this;
}
/**
* Get cantidad
*
* @return integer
*/
public function getCantidad()
{
return $this->cantidad;
}
/**
* Set escuela
*
* @param \Backend\EscuelaBundle\Entity\Escuela $escuela
* @return Grupo
*/
public function setEscuela(\Backend\EscuelaBundle\Entity\Escuela $escuela = null)
{
$this->escuela = $escuela;
return $this;
}
/**
* Get escuela
*
* @return \Backend\EscuelaBundle\Entity\Escuela
*/
public function getEscuela()
{
return $this->escuela;
}
/**
* Set cuotabase
*
* @param boolean $cuotabase
* @return CuotaEscuela
*/
public function setCuotabase($p)
{
$this->cuotabase = $p;
return $this;
}
/**
* Get cuotabase
*
* @return boolean
*/
public function getCuotabase()
{
return $this->cuotabase;
}
public function __toString() {
return $this->descripcion." - ".$this->cantidad." €";
}
}
并在我的控制器中调用它:
$couta = new CuotaEscuela();
$couta->setDescripcion("Cuota Base");
$couta->setCantidad(0);
$couta->setEscuela($entity);
$cuota->setCuotabase(true);
$entity->addCuota($couta);
Al方法工作正常,但在第107行 $ cuota-&gt; setCuotabase(true); 不起作用并返回此错误: 致命错误:在
中的非对象上调用成员函数setCuotabase()我不明白为什么会出现这个错误。 任何线索?
提前致谢
答案 0 :(得分:0)
检查语法: $ couta ,而不是 $ cuota ! ^^
目前:
$cuota->setCuotabase(true);
应该是:
$couta->setCuotabase(true);
因为您将对象初始化为$couta = new CuotaEscuela();
或者我认为所有对象都应该命名为$cuota
;)