我是Symfony
的新手,我已有Document
作为User.php
的地方,这是我的旧文件。
use FOS\UserBundle\Model\User as BaseUser;
class User extends BaseUser
{
/**
* @MongoDB\Id(strategy="auto")
*/
protected $id;
/**
* @MongoDB\Field(type="string")
*/
protected $name;
/**
* @MongoDB\Field(type="string")
*/
protected $email;
public function getId()
{
return $this->id;
}
public function setName($name)
{
$this->name = $name;
return $this;
}
public function getName()
{
return $this->name;
}
}
然后我需要添加新归档的电子邮件,然后我更改了User.php
,这是更新的文件。
use FOS\UserBundle\Model\User as BaseUser;
class User extends BaseUser
{
/**
* @MongoDB\Id(strategy="auto")
*/
protected $id;
/**
* @MongoDB\Field(type="string")
*/
protected $name;
/**
* @MongoDB\Field(type="string")
*/
protected $email;
public function getId()
{
return $this->id;
}
public function setName($name)
{
$this->name = $name;
return $this;
}
public function getName()
{
return $this->name;
}
public function setEmail($email)
{
$this->email = $email;
return $this;
}
public function getEmail()
{
return $this->email;
}
}
然后,我尝试获取显示其节目null
的电子邮件的价值,我将数据库贴了一下,并且电子邮件字段中存在值。这是我的代码。
$user = $this->dm()->getRepository('UserBundle:User')->find($id);
var_dump($user->getEmail());
我还使用以下命令删除了所有缓存。
php app/console doctrine:cache:clear-metadata
php app/console doctrine:cache:clear-query
php app/console doctrine:cache:clear-result
还使用rm -rf var/cache
删除缓存,但是它仍然给出空值。
我怎么了你能帮我吗?
答案 0 :(得分:0)
电子邮件已在Baseuser中定义。也许您必须添加 parent :: getEmail()或完全删除吸气剂