我正在尝试使用Twig
模板来显示使用Doctrine 1
获取的某些对象。在访问hasMany
类的setUp
函数中使用User
声明的关系时,我遇到了问题。在我的PHP代码中,我可以做$user->Instance
而没有任何问题,但是如果我将$user
传递给模板并尝试执行user.Instance
则会引发异常:
Doctrine_Record_Exception' with message 'Unknown method User::Instance'
我该如何解决这个问题?
谢谢,
PS:使用user.get('Instance')
似乎有用但我当然更愿意避免它
答案 0 :(得分:0)
为避免这种情况,您必须定义要在模板中调用的所有getter,因为doctrine使用“魔术方法”(__call() - method)为您提供getter和setter。
E.g。对于属性“firstname”:
Twig检查方法“getFirstname”是否存在,但模型中没有定义“getFirstname”方法。
在这里你找到一个补丁,告诉学说生成getter和setter: http://coolsoft.altervista.org/en/blog/2009/03/how-make-symfonydoctrine-generate-accessors