[英]Connect a table to many to many table
我有商品和公司的多對多表,我想將它與一對多表company_good聯系起來
+----------------+------------+
| company_ID | good_ID |
+----------------+------------+
| 1 | 1 |
| 2 | 1 |
| 2 | 2 |
+----------------+------------+
銷售量
+----------+----------------+--------------+----------+
| id | date | company_id | good_id |
+----------+----------------+--------------+----------+
| 1 | 2019-02-01 | 1 | 1 |
| 2 | 2019-02-01 | 2 | 1 |
| 2 | 2019-02-01 | 1 | 1 |
+----------+----------------+--------------+----------+
我想問的是,有沒有關於基於laravel規則的銷售的命名列? 我知道什么是當一個表posts
想將它連接到表users
表命名post
應user_id
。 但是在這種情況下,我該如何命名?
首先,您一定要使用Eloquent。
列名稱可以是您想要的任何名稱。 當設置多對多模型方法時,您可以在其中定義相關的列名稱
這是Laravel文檔的摘錄:
除了自定義聯接表的名稱之外,還可以通過將其他參數傳遞給belongsToMany方法來自定義表上鍵的列名。 第三個參數是您要在其上定義關系的模型的外鍵名稱,而第四個參數是您要加入的模型的外鍵名稱:
返回$ this-> belongsToMany('App \\ Role','role_user','user_id','role_id');
在https://laravel.com/docs/5.8/eloquent-relationships#many-to-many了解更多
我建議將一個id
列添加到company_good
表中,並將對應的模型命名為CompanyGood
,而不是在sales
表中使用company_good_id
列來命名company_id
和good_id
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.