我开始使用Laravel进行一个小项目,我创建了一个数据透视表,现在我尝试访问我的数据透视表字段,但是却什么也没得到: 这是我的代码:
#attributes: array:13 [
"id" => 1
"organisation_name" => "Doukkala"
"phone" => "xx"
"fax" => "xx"
"address" => "rue paris"
"city" => "Montreal"
"zipcode" => "24000"
"website" => "social"
"linkedin" => "social"
"facebook" => "social"
"twitter" => "social"
"created_at" => null
"updated_at" => null
]
#original: array:16 [
"id" => 1
"organisation_name" => "Doukkala"
"phone" => "xx"
"fax" => "xx"
"address" => "rue paris"
"city" => "Montreal"
"zipcode" => "24000"
"website" => "social"
"linkedin" => "social"
"facebook" => "social"
"twitter" => "social"
"created_at" => null
"updated_at" => null
"pivot_user_id" => 3
"pivot_organisation_id" => 1
"pivot_position" => "CEO"
]
为什么我在原始属性中而不是在属性数组中看到枢轴字段,我应该在模型中做些事情吗?
答案 0 :(得分:0)
已修复:我必须添加
protected $hidden = [];
答案 1 :(得分:0)
这个问题不是很清楚,但是据我所知。您有拥有多个用户的组织。如果您有多个属于组织的用户,请使用belongsToMany,如果您有1个属于1个组织的用户,请使用belongsTo:https://laravel.com/docs/7.x/eloquent-relationships
在Organization.php或内部的任何模型文件名中。创建一个用于描述这种关系的函数。
public function users()
{
return $this->belongsToMany('App\User');
}
要访问视图/控制器内部的信息,您需要做的是:
controller.php
function($id)
$organization = Organization::find($id);
return view('view', compact('organization'));
然后,您可以使用以下方法访问中心信息:
@foreach($organization->users as $user)
{{$user->name}}
@endforeach