从belongsToMany关系中获取用户

时间:2018-10-21 06:04:23

标签: laravel octobercms octobercms-plugins

我在 10月CMS 中拥有一个service模型。

在此模型中,我需要获得postman的用户(postman是用户组),但是我收到此错误:

  

试图获取非对象的属性

这是我的代码

public function getPostmanIdOptions()
{

    $groups = UserGroup::where('id','4')->lists('name', 'id');
    $groups->users;

    $list = [' ' => 'choose'] + $groups;
    return $list;
}

1 个答案:

答案 0 :(得分:0)

目前,您的lists()函数将仅返回每个用户组的nameid。用于返回后端选择的lselect选项(我假设)。

在这种情况下,您需要做的是根据记录id返回记录,这可以使用find()雄辩的方法来完成。

这样做,将返回完整的UserGroup模型及其关系等。

您是新代码,看起来应该像这样:

...    

$group = UserGroup::find(4);
$users = $group->users;

...

在检索users之后,可以根据需要使用lists()方法:

$list = $group->users->lists('name', 'id');