我的BDD上有一个名为Reading的列表。我正在使用捆绑包实现聊天,并且如果收到未经解决的消息,我想提醒用户,以便我使用此列。但我无法访问实体的属性。我的意思是捆绑设置默认读取值为1,但我试图将其更改为0但不起作用。 我试图将实体属性设置读取值修改为false但得到相同的结果。
我会放置实体代码。我提出了一些建议。
@Transactional
我试图将protected替换为private,但得到的结果相同。
在我的控制器中,我有一个函数sendMessage,我实现了Logs来检查这个读取值,但是它打印了Message example [] []。所以没有得到阅读的价值。
<?php
namespace belousovr\belousovChatBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\Mapping\JoinColumn;
use Doctrine\ORM\Mapping\ManyToOne;
use FOS\UserBundle\Model\User;
/**
* @ORM\Entity
* @ORM\Entity(repositoryClass="belousovr\belousovChatBundle\Entity\MessagesRepository")
* @ORM\Table(name="belousovr_messages")
*/
class Messages
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @var string
*
* @ORM\Column(name="messageText", type="string", length=255)
*/
protected $messageText;
/**
* @var boolean
*
* @ORM\Column(name="reading", type="boolean")
*/
protected $reading;
protected $author;
protected $addressee;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set messageText
*
* @param string $messageText
*
* @return Messages
*/
public function setMessageText($messageText)
{
$this->messageText = $messageText;
return $this;
}
/**
* Get messageText
*
* @return string
*/
public function getMessageText()
{
return $this->messageText;
}
/**
* Set reading
*
* @param boolean $reading
*
* @return Messages
*/
public function setReading($reading = false)
{
$this->reading = $reading;
return $this;
}
/**
* Get reading
*
* @return boolean
*/
public function getReading()
{
return $this->reading;
}
/**
* Set author
*
* @param $author
*
* @return Messages
*/
public function setAuthor($author)
{
$this->author = $author;
return $this;
}
/**
* Get author
*/
public function getAuthor()
{
return $this->author;
}
/**
* Set author
*
* @param $addressee
*
* @return Messages
*/
public function setAddressee($addressee)
{
$this->addressee = $addressee;
return $this;
}
/**
* Get author
*/
public function getAddressee()
{
return $this->addressee;
}
}
答案 0 :(得分:0)
首先尝试将假密码硬编码到setter中
/**
* Set reading
*
* @param boolean $reading
*
* @return Messages
*/
public function setReading()
{
$this->reading = false;
return $this;
}
或者创建构造函数并将读取变量设置为false。
public function __construct(){
$this->reading = false ;
}
否则显示您用于记录结果的函数。