これは単純な問題かもしれませんが、私の頭を台無しにしています。
問題は、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"}