Symfony 将细枝对象传递给Javascript(json_encode结果为空)

Symfony 将细枝对象传递给Javascript(json_encode结果为空),symfony,twig,Symfony,Twig,我有一个从我的控制器传递到我的小枝模板的项目集合,称为资格。然后循环遍历集合中的每个对象,并将其打印到表中的一行。每一行都有一个“编辑”按钮,该按钮应将该对象的值传递给javascript函数。这是我的密码: {%for qualification in qualifications%} <tr id="qualification_{{qualification.id}}"> <td>{{qualification.name}}</td&g

我有一个从我的控制器传递到我的小枝模板的项目集合,称为资格。然后循环遍历集合中的每个对象,并将其打印到表中的一行。每一行都有一个“编辑”按钮,该按钮应将该对象的值传递给javascript函数。这是我的密码:

{%for qualification in qualifications%} 
    <tr id="qualification_{{qualification.id}}">
        <td>{{qualification.name}}</td>
        <td>{{qualification.saqaId}}</td>
        <td>{{qualification.qualificationType}}</td>
        <td>{%if (qualification.course is null) %} - {%else%} {{qualification.course.name}} {%endif%}</td>
        <td>0</td>
        <td><a class="button btn-primary btn-xs" onclick="setForm({{qualification|json_encode(constant('JSON_PRETTY_PRINT'))}});">Edit</a></td>
    </tr>
{%endfor%}
{%用于资格证书中的资格证书%}
{{qualification.name}
{{qualification.saqaId}}
{{qualification.qualificationType}
{%if(qualification.course为空)%}-{%else%}{{{qualification.course.name}{%endif%}
0
编辑
{%endfor%}
我按预期获得了表行中的信息,但在查看编辑按钮上的HTML时,我只看到
onclick=“setForm({});”
。我尝试过使用和不使用raw,我也尝试过
{{qualification | json_encode(constant('json_PRETTY_PRINT'))}
,但都返回空白

在一个相似但不相关的注释上。我一直有其他问题与细枝以及<代码>{{dump()}只是加载一段时间,然后给出一个带有未指定错误的空白页。我尝试过用我能找到的文档激活services.xml和config.yml中的细枝调试,但没有成功。然而,这不是我主要关心的问题,我主要关心的是返回空结果的json_encode


在这方面的帮助或建议将不胜感激,因为我遇到了一堵墙。

你有没有试过{{{dump(学历)}}?输出是什么?

您的意思是
json\u decode
?不,json\u encode是正确的,因为我有一个对象从我的控制器传递到了twig,它需要编码为json以便javascript使用。可以为你工作,或者在leat给你一个hintAs在我原来的帖子中提到的,dump不起作用。{{dump()}}和{dump(qualifications)}}只是加载一段时间,然后导致一个未指定的服务器500错误,屏幕为空白。查看日志文件,包括symfony日志和php日志,然后发布内容