在呈现模板期间抛出了异常

Mat*_*ock 3 orm doctrine symfony

在呈现模板期间抛出了异常

可捕获的致命错误:类Doctrine\ORM\PersistentCollection的对象无法转换为字符串

AppBundle:Dashboard:index.html.twig第46行.

这是因为appointment.employees.有人可以解释一下吗?这是具有以下关系的实体:

/**
 * @ORM\ManyToMany(targetEntity="LamecoEmployee")
 * @ORM\JoinTable(name="appointment_lamecoemployee",
 *      joinColumns={@ORM\JoinColumn(name="appointment_id", referencedColumnName="id")},
 *      inverseJoinColumns={@ORM\JoinColumn(name="lamecoempoloyee_id", referencedColumnName="id")}
 *      )
 */
protected $employees;
Run Code Online (Sandbox Code Playgroud)

这是观点:

{% for appointment in appointments %}
    <tr>
        <td>{{appointment.startDate|date('H:i')}}</td>
        <td>{{appointment.client.companyname}}</td>
        <td></td>
        <td>{{appointment.employees}}</td>
        <td>{{appointment.description}}</td>
    </tr> <br>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

Ric*_*ard 5

你必须遍历约会雇员,因为它是一个集合(与约会相同),或者将其转换为twig可以内联渲染的东西.

例如

{% for employee in appointment.employees %}
    {{employee.name}}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

或者,如果您只是想要计数而不是迭代:

{{appointment.employees|length}}
Run Code Online (Sandbox Code Playgroud)