我是symfony2的新手。我创建了一个名为投资组合控制器的基本控制器,并为该控制器创建了一些索引视图。我也创建了一个实体类,但它给出了错误。
我的控制器是
<?php
namespace IDP'Bundle'Controller;
use Symfony'Bundle'FrameworkBundle'Controller'Controller;
class PortfolioController extends Controller {
public function indexAction() {
$product = $this->getDoctrine()
->getRepository('IDPBundle:Portfolio')
->find(1);
return $this->render('IDPBundle:Portfolio:index.html.twig');
}
}
内部 src/IDP/捆绑包/实体/投资组合.php
<?php
namespace IDP'Bundle'Entity;
use Doctrine'ORM'Mapping as ORM;
use Symfony'Component'Validator'Constraints as Assert;
class Portfolio
{
private $id;
private $user_id;
private $portfolio_name;
private $description;
private $permalink;
private $sharingCode;
private $shared;
private $shared_portfolio_calls;
private $patentgroup_id;
public function __construct()
{
$this->portfolioGroups = new 'Doctrine'Common'Collections'ArrayCollection();
}
public function getId()
{
return $this->id;
}
public function setName($portfolio_name)
{
$this->name = $portfolio_name;
}
public function setDescription($description)
{
$this->description = $description;
}
public function getDescription()
{
return $this->description;
}
public function setSharingCode($sharingCode)
{
$this->sharingCode = $sharingCode;
}
public function getSharingCode()
{
return $this->sharingCode;
}
public function setShared($shared)
{
$this->shared = $shared;
}
public function getShared()
{
return $this->shared;
}
public function getUser()
{
return $this->user;
}
}
我的表名称是pm_portfolios,它包含我在投资组合类中提到的所有字段。
谁能告诉我我做错了什么?
您的实体缺少所有 ORM 元数据,例如类本身的@ORM'Entity
及其属性的其他元数据。请参阅文档中的示例。
您的实体类没有任何 ORM 元数据。尝试这样的事情
<?php
namespace IDP'Bundle'Entity;
use Doctrine'ORM'Mapping as ORM;
use Symfony'Component'Validator'Constraints as Assert;
/**
* IDP'Bundle'Entity'Portfolio
* @ORM'Table(name="pm_portfolios")
*/
class Portfolio
{
/**
* @var integer $id
*/
private $id;
/**
* @var integer $user_id
*/
private $user_id;
/**
* @var string $portfolio_name
*/
private $portfolio_name;
/**
* @var text $description
*/
private $description;
/**
* @var string $permalink
*/
private $permalink;
/**
* @var string $sharing_code
*/
private $sharing_code;
/**
* @var boolean $shared
*/
private $shared;
/**
* @var integer $shared_portfolio_calls
*/
private $shared_portfolio_calls;
/**
* @var integer $patentgroup_id
*/
private $patentgroup_id;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set user_id
*
* @param integer $userId
*/
public function setUserId($userId)
{
$this->user_id = $userId;
}
/**
* Get user_id
*
* @return integer
*/
public function getUserId()
{
return $this->user_id;
}
/**
* Set portfolio_name
*
* @param string $portfolioName
*/
public function setPortfolioName($portfolioName)
{
$this->portfolio_name = $portfolioName;
}
/**
* Get portfolio_name
*
* @return string
*/
public function getPortfolioName()
{
return $this->portfolio_name;
}
/**
* Set description
*
* @param text $description
*/
public function setDescription($description)
{
$this->description = $description;
}
/**
* Get description
*
* @return text
*/
public function getDescription()
{
return $this->description;
}
/**
* Set permalink
*
* @param string $permalink
*/
public function setPermalink($permalink)
{
$this->permalink = $permalink;
}
/**
* Get permalink
*
* @return string
*/
public function getPermalink()
{
return $this->permalink;
}
/**
* Set sharing_code
*
* @param string $sharingCode
*/
public function setSharingCode($sharingCode)
{
$this->sharing_code = $sharingCode;
}
/**
* Get sharing_code
*
* @return string
*/
public function getSharingCode()
{
return $this->sharing_code;
}
/**
* Set shared
*
* @param boolean $shared
*/
public function setShared($shared)
{
$this->shared = $shared;
}
/**
* Get shared
*
* @return boolean
*/
public function getShared()
{
return $this->shared;
}
/**
* Set shared_portfolio_calls
*
* @param integer $sharedPortfolioCalls
*/
public function setSharedPortfolioCalls($sharedPortfolioCalls)
{
$this->shared_portfolio_calls = $sharedPortfolioCalls;
}
/**
* Get shared_portfolio_calls
*
* @return integer
*/
public function getSharedPortfolioCalls()
{
return $this->shared_portfolio_calls;
}
/**
* Set patentgroup_id
*
* @param integer $patentgroupId
*/
public function setPatentgroupId($patentgroupId)
{
$this->patentgroup_id = $patentgroupId;
}
/**
* Get patentgroup_id
*
* @return integer
*/
public function getPatentgroupId()
{
return $this->patentgroup_id;
}
}