这可能是一个简单的问题,但让我头疼。
问题是我正在用fuelPHP、RedBean 和Twig 做一个项目。一切似乎都很好,我在这个框架上进展得非常好。
我遇到的尚未找到任何解决方案的问题是,{{object.property}}
如果我从 redbean 获取对象,则无法访问 Twig。这很奇怪,因为如果我使用自己的 MVC 框架,完全相同的代码(Twig+Redbean 也是)可以工作。
例如
public function action_messages() {
$room = \Uri::segment(3);
$this->data['messages'] = \R::find('message', 'room = ? ORDER BY id', array($room));
// This is working because it's converting each row to array
/*foreach($this->data['messages'] as $id => $message)
$this->data['messages'][$id] = $message->export();*/
return \Response::forge(\View::forge('chat/messages.twig', $this->data));
}
如果我将导出作为数组而不是作为对象,则事情会按预期工作。
{%for message in messages%}
<b>{{message.user.id}}</b>{{message.datetime}}: {{message.text}}
{%endfor%}
我真的迷失了。因此,我将不胜感激任何可能的帮助。
编辑:(更多信息)
如果我把
{%for message in messages%}
{{message}}<br/>
{%endfor%}
我从 Var 得到这个输出。
{"id":"23","text":"A test","room":"1","datetime":"2012-10-05 15:32:36","user_id":"1"}