【问题标题】:Laravel Eloquent - Get all X through it's Y columnLaravel Eloquent - 通过它的 Y 列获取所有 X
【发布时间】:2018-12-04 19:24:55
【问题描述】:

假设我有一个 Thread 模型,hasMany Post。 我想获取属于某个线程的所有帖子。

但是发送给控制器的query参数不是id,而是线程的'thread_name'

我现在正在做的事情是这样的:

1) 通过thread_name 获取线程(为了论证,它是独一无二的),这将给我$thread
2) 获取thread_id = $thread->id的所有帖子

我认为这效率不高,因为我要发送两个 SQL 查询。

有没有办法通过thread_name选择帖子?

对不起,我觉得这个帖子的标题很混乱。

【问题讨论】:

    标签: php laravel eloquent


    【解决方案1】:

    你应该试试这个:

    $thread = Thread::where('thread_name', $thread_name)->with('posts')->first();
    

    这会将线程的帖子加载到线程对象中。

    【讨论】:

    • 谢谢,我忘了 with 方法了。
    猜你喜欢
    • 2020-11-26
    • 2020-01-15
    • 2019-04-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 1970-01-01
    相关资源
    最近更新 更多