【发布时间】:2013-09-14 09:42:49
【问题描述】:
我在 Laravel 中使用具有 hasMany 关系的 eloquent ORM。
当我跑步时:
Level::find(1)->lessons()->get();
它工作正常,但是当我像这样使用动态属性时:
Level::find(1)->lessons
它只返回 level 而不是 lessons 的结果。
我需要在某个地方进行其他设置吗?
编辑:以下是模型:
class Level extends Eloquent {
protected $table = 'levels';
public function lessons()
{
return $this->hasMany('Lesson');
}
}
class Lesson extends Eloquent {
protected $table = 'lessons';
public function level()
{
return $this->belongsTo('Level');
}
}
【问题讨论】:
-
添加了模型,没什么特别的,只是按照文档进行操作,不确定我是否缺少其他一些参数或设置以使其正常工作。
-
这很奇怪,一切都是正确的。
-
是的,我真的没有在这里做任何特别的事情,
get()电话工作得很好。它不返回任何错误,什么也没有,它只是不运行。如果我回显最后一个查询,它将显示用于获取该级别的level而不是lessons的查询。
标签: php orm laravel eloquent dynamic-properties