gpt4 book ai didi

mysql - Laravel 4.2 查询生成器中如何嵌套联接

转载 作者:行者123 更新时间:2023-11-29 21:52:13 25 4
gpt4 key购买 nike

我正在尝试使用 Laravel 4.2 查询生成器获取产品列表。各表关联如下

产品
产品.product_category_id

产品类别
产品.product_category_id = 产品_categories.id

产品类别翻译
产品类别.id = 产品类别翻译.产品类别 ID

我现在正在做的是......

$products = DB::table('products')->join('product_categories', function($join){
$join->on('products.product_category_id','=','product_categories.id');
});

并且我可以获得产品类别相关表的内容。但是我如何嵌套另一个联接并从产品类别翻译表中获取相关数据?

最佳答案

我建议您查看 laravel 文档,找到与模型建立关系的正确方法。 http://laravel.com/docs/4.2/eloquent#relationships

然后您将创建类似的模型

class Product extends Eloquent {
public function category()
{
return $this->hasOne('ProductCategory');
}
}
class ProductCategory extends Eloquent {
public function product()
{
return $this->hasOne('Product');
}
public function translation()
{
return $this->hasOne('Translation');
}
...

然后要获取最后一个表,就像这样简单:

$category = Category::find($categoryId);
$translation= $category ->translation;

或者,如果您拥有的 ID 是 ProductId,您可以使其与产品表中的类似。

关于mysql - Laravel 4.2 查询生成器中如何嵌套联接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33526653/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com