簡體   English   中英

如何在數據透視表(Laravel)中訪問此值?

[英]How can I access this value in a pivot table (Laravel)?

我正在使用Laravel和Vue.js組合一個簡單的購物車系統來出售照片。 每張照片都有各種尺寸,每種尺寸的價格都不同。

我有以下表格:

Photos
 - id
 - title

Sizes
 - id
 - dimensions

Photos_Sizes
 - id
 - photo_id
 - size_id
 - price

我正在使用Vue.js對購物車控制器進行API調用以操縱購物車。 當用戶單擊“添加到購物籃”按鈕時,它將傳遞photo_id和size_id。 自然,我想從數據庫而不是客戶端那里獲取所選商品的價格,以防止出現任何厚臉皮,這自然意味着查詢數據透視表。

我的問題是,使用傳遞給控制器​​的兩個ID,如何在數據透視表中訪問正確的價格值?

您可以在控制器中使用查詢生成器,如下所示:

public function price(Request $request)
{

    $row = DB::table('Photos_Sizes')
        ->where('photo_id', $request->input('photo_id'))
        ->where('size_id', $request->input('size_id'))
        ->first();

    return Response::create($row->price, 200);
}

在“照片”和“尺寸”的關系上,添加->withPivot('price')然后在設置好結果集之后,可以使用$size->pivot->price訪問該字段

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM