【发布时间】:2015-01-05 20:11:22
【问题描述】:
我以前做过很多次,但不知怎的,我的思绪一直停留在这个上:
$data['conversations'] = Conversation::with("sender")->received()->get();
执行{{ $conversation }} 会产生:
{
"id": "1",
"subject": "",
"sender": {
"id": "4",
"email": "jane@doe.com",
"name": "Jane Poe",
"group_id": "3",
"created_at": "2014-12-22 20:31:00",
"updated_at": "2014-12-22 20:31:00"
},
"receiver": "1",
"created_at": "2015-01-04 00:00:00",
"updated_at": "2015-01-04 00:00:00"
}
注意“发件人?现在{{ $conversation->sender->email }} 给出:
试图获取非对象的属性
当调用{{ $conversation->sender }} 时,它只打印“4”(id)。
sender 存储在 conversation 表中名为 sender 的列中。
$conversation->sender() 也不起作用
这是代码:
class Conversation extends Eloquent {
protected $table = 'conversations';
public function sender()
{
return $this->belongsTo('User','sender','id');
}
public function receiver()
{
return $this->belongsTo('User','receiver','id');
}
}
【问题讨论】:
标签: php mysql oop laravel eloquent