OK,这里是我的代码:从我的模型,我的人际关系Laravel预先加载
// message model
public function profile() {
return $this->has_one('Profile', 'id');
}
// profile model
public function message(){
return $this->has_many('message', 'id')->order_by('created_at', 'asc');
}
我的控制器:
public function get_MyMessages(){
$per_page = 50; // results per page
$messages = Message::with('profile')->where('receiver_id', '=', Auth::user()->id)->or_where('sender_id', '=', Auth::user()->id)->take($per_page);
$messages = $messages->paginate($per_page);
$messages->appends(array($per_page))->links();
$data = array(// data to pass to view
'title' => 'My Messages',
'messages' => $messages,
);
return View::make('myProfile.myMessages',$data); // create view
}
在我看来,我可以这样做:
@foreach($messages->results as $message)
{{ $message->message }}
@endforeach
其中一期工程好,但是当我尝试:{{$ messages-> profile-> first_name}}
我得到以下错误:尝试获取非对象的属性 如果我尝试:{{print_r($ message-> profile}}所有数据都在那里,我只是无法访问它。
我已经尝试了一切,我做错了什么?
嗨,谢谢你的回答,非常有意义我真的认为你的问题解决了。然而,我仍然得到相同的错误:试图获得非对象的属性 – user1543871 2013-05-12 00:06:03
我的歉意,我没有浏览你的刀片语法,我编辑了我的答案,它现在应该完全解决问题。 :) – 2013-05-12 00:50:41
好的非常感谢您的帮助,我会检查我的代码,看看我如何继续。 – user1543871 2013-05-12 15:31:25