【问题标题】:Error in attaching/syncing many to many polymorphic relationship using Laravel使用 Laravel 附加/同步多对多多态关系时出错
【发布时间】:2015-01-29 05:37:27
【问题描述】:

我有一个 Game 类和一个可以有多种语言的 News 类。

这是我的模型:

Game:
id
string

News:
id
string

Languagable
id
languagable_id
languagable_type

Game:
public function languages()
{
    return $this->morphToMany('Language', 'languagable');
}

News:
public function languages() {
    return $this->morphToMany('Language', 'languagable');
}

Language:
public function games()
{
    return $this->morphedByMany('Game', 'languagable');
}

public function news()
{
    return $this->morphedByMany('News', 'languagable');
}

我按照这篇文章中指示的插入或附加/同步操作进行了操作: How to save entries in many to many polymorphic relationship in Laravel?

当我这样做时:

$game->languages()->attach(1);

出现此错误: 未找到列:1054“字段列表”中的未知列“language_id”(SQL:插入languagableslanguagable_idlanguagable_typelanguage_id)值(1,游戏,1))

它似乎是在寻找另一个语言 ID 而不是 languagable_id。我已经在这几个小时了,似乎无法解决这个问题。

任何帮助将不胜感激。谢谢!

【问题讨论】:

    标签: laravel many-to-many polymorphism


    【解决方案1】:

    只需要添加一个language_id,因为它是多对多的关系。

    【讨论】:

      猜你喜欢
      • 2015-02-14
      • 2018-07-23
      • 2020-11-10
      • 1970-01-01
      • 1970-01-01
      • 2016-06-20
      • 2017-03-02
      • 2017-02-28
      • 2021-10-29
      相关资源
      最近更新 更多