我想拉一個屬於某個用戶的字符列表。當我提出請求時,我得到一個SQL錯誤。通過錯誤的閱讀,它試圖給我們不存在的領域。雄辯的表關係
錯誤:
SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias: 'characters' (SQL: select `characters`.*, `characters`.`id` as `pivot_id`,
`characters`.`character_id` as `pivot_character_id`
from `characters` inner join `characters` on `characters`.`id` = `characters`.`character_id` where `characters`.`id` = 1)
「character_id」 並不在我的數據庫存在。問題是我無法找到雄辯的地方。我通過源代碼看了一下,有很多的「如果不提供使用$variable.'_id'
。我找不到任何代碼的任何地方爲這雖然。
模型如下。
class Character extends Eloquent {
protected $guarded = array('id');
protected $table = 'characters';
public function User()
{
return $this->belongsTo('User', 'id');
}
}
class User extends Eloquent implements UserInterface, RemindableInterface {
use UserTrait, RemindableTrait;
protected $table = 'users';
protected $hidden = ['password', 'remember_token'];
protected $guarded = ['password'];
public function Character()
{
return $this->belongsToMany('Character', 'characters', 'id');
}
}
有一個。在用戶表user_id
中的字符表,id
之間的外鍵
所以你只有兩個表? – 2014-09-02 03:54:35
是的,我應該多吃點嗎? – 2014-09-02 10:29:59