首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >以id数组代替单个id的Laravel BelongsToMany

以id数组代替单个id的Laravel BelongsToMany
EN

Stack Overflow用户
提问于 2021-06-10 13:26:42
回答 2查看 501关注 0票数 0

给予:

代码语言:javascript
运行
复制
"users" table:

[{
 id: 1,
 school_ids: [1, 2, 3] // text type cast as array
}]

然后:

代码语言:javascript
运行
复制
"schools" table:

[{
  id: 1,
  name: 'school 1",
},
{
  id: 2,
  name: 'school 2",
},
{
  id: 3,
  name: 'school 3",
}]

目前,我的用户模型中有如下关系:

代码语言:javascript
运行
复制
public function schools() {
  return $this->belongsToMany(School::class, 'school_ids');
}

现在不起作用了。

  1. ,我在想,如果它读取school_ids,它会把它转换成一个数组,调用User::schools()会给我一个School模型?
  2. 的集合,如果#1可以完成的话,我想知道我是否可以在Laravel (?)

上实现它。

EN

回答 2

Stack Overflow用户

发布于 2021-06-10 13:51:37

从关系上看,我想你做不到,但你可以做这样的事情

代码语言:javascript
运行
复制
public function schools() {
  return Schools::whereIn('id',$this->school_ids)->get(); // Will return collection of Schools object 
}
票数 1
EN

Stack Overflow用户

发布于 2021-06-10 16:38:15

因此,为了让我的生活更容易,我决定创建一个支点表,而不是连接学校和用户。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67922124

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档