【发布时间】:2021-07-20 19:04:36
【问题描述】:
我有 3 张桌子:
categoriesadminsusers
类别可以创建用户和管理员。在categories 表中我有morphs 字段:
$table->nullableMorphs('userable');
Category 模型中的关系:
public function userable()
{
return $this->morphTo();
}
public function user()
{
return $this->morphOne(self::class, 'userable');
}
但是当我尝试这样做时:
$category = Category::first();
$user = User::first();
$category->user()->save($user);
收到错误消息:
Illuminate\Database\QueryException 并带有消息“SQLSTATE[42S22]: 未找到列:1054“字段列表”中的未知列“userable_id” (SQL:更新
users设置userable_id=1,userable_type= 应用\模型\类别,users.updated_at= 2021-04-27 12:13:22 其中id= 1)'
如何在 laravel 中正确创建自变形关系?
【问题讨论】:
-
你能告诉我们你的迁移吗?
-
类别表迁移? @SpaceDogCS
-
哦,算了,现在我明白你要做什么了
标签: laravel eloquent relationship laravel-8 eloquent-relationship