Придерживайтесь простого отношения «один-ко-многим»

Я знаю, что об этом уже спрашивали несколько раз, но все же я в этом,
вот мои таблицы:
Персонажи: CharacterId, Имя
Гильдии: GuildId, Имя
Guild_members: Id, GuildId, CharacterId

Мои модели:

Гильдия:

class Guild extends Model { protected $table = "guilds";
public function members()
{
return $this->hasMany('App\Character', 'guild_members', 'CharacterId', 'GuildId');
}

Символ :

class Character extends Model { protected $connection = "mysql";
protected $table = "characters";

protected $primaryKey = "Id";

public function Guild()
{
return $this->belongsTo('App\Guild', 'guild_members', 'CharacterId', 'GuildId');
}

Когда я запускаю код, он дал мне:

 SQLSTATE[42S22]: Column not found: 1054 Unknown column 'guilds.CharacterId' in 'where clause' (SQL: select * from guilds where guilds.CharacterId is null limit 1) (View:

(например, если он игнорирует аргумент персонажа принадлежит) Любая помощь, пожалуйста, спасибо 🙂

0

Решение

Я знаю, что об этом уже спрашивали несколько раз, но все же я в этом,
вот мои таблицы:
Персонажи: CharacterId, Имя
Гильдии: GuildId, Имя
Guild_members: Id, GuildId, CharacterId

Мои модели:

Гильдия:

class Guild extends Model { protected $table = "guilds";
public function members()
{
return $this->hasMany('App\Character', 'guild_members', 'CharacterId', 'GuildId');
}

Символ :

class Character extends Model { protected $connection = "mysql";
protected $table = "characters";

protected $primaryKey = "Id";

public function Guild()
{
return $this->belongsTo('App\Guild', 'guild_members', 'CharacterId', 'GuildId');
}

Когда я запускаю код, он дал мне:

 SQLSTATE[42S22]: Column not found: 1054 Unknown column 'guilds.CharacterId' in 'where clause' (SQL: select * from guilds where guilds.CharacterId is null limit 1) (View:

(например, если он игнорирует аргумент персонажа принадлежит) Любая помощь, пожалуйста, спасибо 🙂

0

Другие решения


active «data-shortcut =» A

самый старый «data-shortcut =» O
голосует «data-shortcut =» V
По вопросам рекламы [email protected]