Laravel 4.1渴望加载多态关系morphTo

时间:2014-02-03 13:13:24

标签: php laravel laravel-4 eloquent

我在Laravel 4.1中试图加载多态关系时遇到问题。请看一下:http://help.laravel.io/d1fb6a5b00975db6 … f037b002f4

基本上我测试了非多态的渴望加载,它运行得很好。

如果我试过这个,那就行了:

Route::get('polytest', function ()
{
  $data = new \StdClass;
  $data->model = new \Picture;
  $posts = $data->model->find(1);
  $posts = $posts->authorable;
  //dd( DB::getQueryLog() );
  return $posts;
});

但这不起作用:

Route::get('polytest', function ()
{
  $model = new \Picture;
  $posts = $model->with('authorable')
            ->orderBy('updated_at', 'desc')
            ->take(15)
            ->get();
  //dd( DB::getQueryLog() );
  return $posts;
});

PS:相关模型和迁移位于上面的链接中。

1 个答案:

答案 0 :(得分:3)

AFAIK它尚未在Laravel 4.1主分支中提供,但在已经提交的拉取请求中正在修复。

但是,如果你现在需要它并且正在运行,你仍然可以使用PR。看看:

https://github.com/laravel/framework/pull/3038

有关详细信息,请按照此处的原始讨论进行操作:

https://github.com/laravel/laravel/issues/1681

<强>更新

正如@ChristianMichael在下面的评论中所述,对MorphTo急切加载的初步支持在Laravel版本4.1.23中只是添加,大​​了!