Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php DB Laravel在同一时间获得第一名_Php_Laravel_Laravel 5 - Fatal编程技术网

Php DB Laravel在同一时间获得第一名

Php DB Laravel在同一时间获得第一名,php,laravel,laravel-5,Php,Laravel,Laravel 5,我只想显示来自“links,tags,pages”和“->first()”的一个结果,但是,我想显示来自“comments”和“->get()”的多个结果,将其分隔在一个数组中,然后发送到视图,我如何才能做到这一点 $link = DB::table('links') ->join('tags', 'tags.id', 'links.tag') ->join('pages', 'pages.id', '=', 'links.pa

我只想显示来自“links,tags,pages”和“->first()”的一个结果,但是,我想显示来自“comments”和“->get()”的多个结果,将其分隔在一个数组中,然后发送到视图,我如何才能做到这一点

    $link = DB::table('links')
            ->join('tags', 'tags.id', 'links.tag')
            ->join('pages', 'pages.id', '=', 'links.page_id')
            ->leftJoin('comments', 'comments.link_id', '=', 'links.id')
            ->select('links.photo', 'links.id', 'links.description', 'links.country', 'links.url', 'links.suggestions', 'links.shares', 'links.friendly_url', 'links.page_id', 'links.sponsored', 'links.clicks', 'links.title', 'tags.color', 'tags.id as tag_id', 'tags.name', 'pages.name as p_name', 'pages.description as p_description', 'pages.id as p_id', 'pages.followers', 'pages.links', 'pages.friendly_url as p_friendly_url', 'pages.photo as p_photo')
            ->where('links.friendly_url', $id)
            ->first();


    return view('site.link', compact('link'));
DD($link)


你可以用雄辩的语言。定义关系:

public function page()
{
    return $this->belongsTo(Page::class);
}

public function tag()
{
    return $this->belongsTo(Tag::class, 'tag');
}

public function comments()
{
    return $this->hasMany(Comment::class);
}
这样做:

Link::with('page', 'tag', 'comments')->where('friendly_url', $id)->first()

充分利用雄辩的人际关系。@Valtersousasacardoso这一切都已经在这些人际关系中了。如果遵循,则不需要在关系中定义外键。你也可以找到一些例子。非常感谢你,非常简单,我怎样才能得到评论的作者?“COMMENTS.user\u id=USERS.id”。我如何选择要获取的字段?@ValterSousaCardoso在
Comment
中定义一个名为
user
关系,然后使用
Link::with('page','tag','COMMENTS.user')->其中…
要选择字段,请使用
->select()
addSelect()
中的
Link::with('page', 'tag', 'comments')->where('friendly_url', $id)->first()