Laravel HasManyThrough 或 BelongsToMany 在我的情況下不起作用。是資料庫結構問題嗎?
P粉505450505
P粉505450505 2023-09-05 09:33:50
0
1
511
<p>我有 3 張表:</p> <pre class="brush:php;toolbar:false;">products table - id - title - etc.</pre> <pre class="brush:php;toolbar:false;">purchases table - id - code - etc.</pre> <pre class="brush:php;toolbar:false;">purchase_products table - id - purchase_id - product_id - qty - etc.</pre> <p>我的目標是檢索單一產品的購買情況。以下關係對我沒效。使用 <code>belongsToMany</code> 嘗試了不同的方法,也無法運作。 </p> <pre class="brush:php;toolbar:false;">$this->hasManyThrough( Purchase::class, PurchaseProduct::class, 'purchase_id', 'product_id', 'id', 'id' );</pre> <p>透過一種簡單的方式,我可以透過product_id取得所有購買的產品,然後檢索購買的商品,但是我需要一個關係才能使其工作,因為Laravel nova 因為我想在資源上顯示購買的商品。 </p>
P粉505450505
P粉505450505

全部回覆(1)
P粉970736384

產品型號

class Product {
    public function purchases()
    {
         return $this->belongsToMany(Purchase::class, 'purchase_products', 'product_id', 'purchase_id');
    }
}

購買模式

class Purchase {
    public function products()
    {
         return $this->belongsToMany(Product::class, 'purchase_products', 'purchase_id', 'product_id');
    }
}
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板