无法访问Twig中的每个对象属性

时间:2017-01-27 08:59:31

标签: symfony twig

我有一个News实体,其中包含下一个属性:

  • 文本
  • 起始日期
  • EXPIRE_DATE

这是课程的一部分:

//News.php

/**
 * @ORM\Column(type="string", length=200)
 */
private $text;

/**
 * @ORM\Column(type="datetime")
 */
private $start_date;

/**
 * @ORM\Column(type="datetime")
 */
private $expire_date;

我想在树枝模板的列表中显示所有新闻,这就是我这样做的方式:

<div class="list-group">
    {%for news in news%}
        <div class="panel panel-default">
         <div class="panel-heading">{{ news.start_date|date('Y-m-d') }}</div>
         <div class="panel-body">
            {{ news.text }}
         </div>
        </div>
    {%endfor%}
</div>

事实是我收到以下错误:

Neither the property "start_date" nor one of the methods "start_date()", "getstart_date()"/"isstart_date()" or "__call()" exist and have public access in class "AppBundle\Entity\News".

但是如果我尝试只渲染text属性,我就可以访问它。

为什么?

1 个答案:

答案 0 :(得分:2)

您的属性是私有的。您可以添加getter

public fucntion getStartDate() {
  return $this->start_date;
}

和枝条

{{ news.startDate|date('Y-m-d') }}