【问题标题】:Laravel Eloquent ORM relationship representation of tag-user-video标签-用户-视频的 Laravel Eloquent ORM 关系表示
【发布时间】:2014-07-06 18:18:25
【问题描述】:

我正在尝试通过 Laravel 的 Eloquent ORM 中的关系来实现以下目标。

  • 全局标签存储在标签模型中(例如 CSS、HTML)
  • 用户可以选择许多标签作为他们的“最爱”
  • 视频可以有很多标签(例如 CSS、HTML)

根据以上内容,我希望能够根据与用户选择的标签相关的视频标签向用户展示最喜欢的视频。

我希望能够根据用户选择的标签在列表中显示这些视频。我不确定我是否应该使用多对多多态关系。我已经设置了这些,但目前我不得不循环标记执行以下操作:

@foreach(Auth::user()->tags()->with('videos')->get() as $tag)
    @foreach($tag->videos as $video)
        {{ $video->name }}
    @endforeach
@endforeach

而我希望能够做到以下几点:

@foreach(Auth::user()->favouriteVideos())
    {{ $video->name }}
@endforeach

请记住,以上示例只是测试,我显然会在我的控制器中收集关系。

也许我在这方面走错了路,但我相信这是可以实现的。我简直无法理解。

【问题讨论】:

    标签: php orm laravel laravel-4 eloquent


    【解决方案1】:

    您可能已经找到了解决方案,但对于遇到此问题的其他人:尝试使用 query scopes

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-01-21
      • 1970-01-01
      • 1970-01-01
      • 2020-03-25
      • 2015-04-16
      • 2015-04-04
      • 1970-01-01
      • 2014-03-12
      相关资源
      最近更新 更多