我試圖創建表之間的簡單關係1066不是唯一的表/別名:Laravel - 上的關係
- attribute_type -
id
name
- category -
id
name
description
所以我創建了一個數據透視表將它們連接:
- attribute_type_category -
attribute_type_id
category_id
還有就是模型中的關係:
在AttributeType.php
public function category() {
return $this->belongsToMany('App\AttributeTypeCategory', 'attribute_type_category', 'attribute_type_id', 'category_id');
}
在AttributeTypeCategory.php
public function category() {
return $this->belongsToMany('App\Category');
}
一切似乎都很正常,但我得到了以下錯誤:
SQLSTATE [42000]:語法錯誤或訪問衝突:1066不是唯一 表/別名:'attribute_type_category'(SQL:select
attribute_type_category
。*,attribute_type_category
。attribute_type_id
aspivot_attribute_type_id
,attribute_type_category
。category_id
aspivot_category_id
fromattribute_type_category
inner joinattribute_type_category
onattribute_type_category
。id
=attribute_type_category
。category_id
其中attribute_type_category
。attribute_type_id
= 1)
你有什麼想法嗎? 謝謝!
當你想創建簡單的多兩個表 像attribute_type和類別, 之間有許多關係,你應該使用遷移像你一樣創建三個表