繁体   English   中英

Laravel 5.3 Eloquent-从3表中选择

[英]Laravel 5.3 Eloquent - select from 3 tables

除了我的最后一个问题, Laravel 5.3雄辩的关系

我添加了一个名为Labels的新表,当然也为此表创建了一个新模型。

语言能力

id
name
short_name

字典

id
label_id
value
language_id

标签

id
label_name

我有这个代码:

$lables = Dictionary::whereHas('language', function($query) {
        $short_name = basename(__DIR__);
        $query->where('short_name', $short_name);
    })->pluck('value', 'label_id')->toArray();

我想拉出label_name字段而不是label_id

但我不知道该如何加入。

您可以尝试使用join()作为

$lables = Dictionary::whereHas('language', function($query) {
                    $query->where('short_name', 'en');
                })
                ->join('labels', 'dictionary.label_id', '=', 'labels.id')
                ->pluck('dictionary.value', 'labels.label_name')
                ->toArray();

我不确定100%会奏效,但您可以试一试。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM