noob问题进入..Laravel引用外键数据
$数据= DB ::表( 'fquotes') - >排序依据( 'created_at', 'DESC') - >获得();
我有这个查询是从fquotes中提取所有数据。每个商品都有一个cid,链接到另一个表中的客户ID。如何在客户表中包含匹配每行的列(名称)?
我要显示的数据:
客户名客户行 - fquotes排
noob问题进入..Laravel引用外键数据
$数据= DB ::表( 'fquotes') - >排序依据( 'created_at', 'DESC') - >获得();
我有这个查询是从fquotes中提取所有数据。每个商品都有一个cid,链接到另一个表中的客户ID。如何在客户表中包含匹配每行的列(名称)?
我要显示的数据:
客户名客户行 - fquotes排
你打电话get()
将执行查询之前,调用join()
方法,它会加入你的表上的其他表由指定的列。
$data = DB::table('fquotes')
->select('customers.id as customer_id', 'fquotes.id as fquotes_id', DB::raw('*'))
->orderBy('created_at', 'DESC')
->join('customers', 'fquotes.cid', '=', 'customers.id')
->get();
你不加入可以使用,只要使用foreach
public function index(Request $request, $id)
{
$items = ReportGlAssignment::where('shop_id', $id)->paginate(10);
foreach ($items as $item){
$bill = BillingAssignment::where('id',$item->billing_assignment_id)->pluck('assignment');
$item['billing_assignment_id'] = $bill;
}
return response()->json($items);
}
它会显示你的外键数据的名称,
{
id: 7,
designation: "Food Service",
income_gl: "333",
expense_gl: "333",
billing_assignment_id: "bgjjnhkj",
shop_id: 12,
created_at: "2017-08-21 07:26:48",
updated_at: "2017-08-23 09:35:54"
},
谢谢!它通常是最基本的PHP的东西,每个人都应该知道,很难找到答案,因为它非常简单.. :) – ZUK88
我收到了另一个问题。来自客户的ID正在覆盖返回对象中来自fquotes的ID。有任何想法吗? – ZUK88
是的,你可以在选择中别名,我已经更新了答案。 – user3158900