gpt4 book ai didi

从 Laravel 的belongsToMany 关系中选择自定义列

转载 作者:行者123 更新时间:2023-12-04 19:06:16 28 4
gpt4 key购买 nike

我试图仅选择多对多关系中的特定属性 users ,就像一对一一样。但是使用 select()belongsToMany()似乎被忽略了,我仍然获得所有用户属性。

class Computer extends Eloquent {
public function users() {
return $this->belongsToMany("User")->select("email");
}

public function admin() {
return $this->hasOne("User")->select("email");
}
}

Computer::with("users")->get();

有没有办法只过滤来自相关实体的指定列 belongsToMany() ?

最佳答案

是的,你actually can .

Computer::with("users")->get(array('column_name1','column_name2',...));

但是,如果数据透视表链接的两个表的列名相同,请小心。在这种情况下,您需要以圆点表示法指定表名, tableName.columnName .例如,如果用户和计算机都有一个列名 id ,你需要做:
Computer::with("users")->get(array('users.id','column_name2',...));

关于从 Laravel 的belongsToMany 关系中选择自定义列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23709936/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com