Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Laravel-如何通过选定的数据透视表获取价值_Php_Laravel_Pivot - Fatal编程技术网

Php Laravel-如何通过选定的数据透视表获取价值

Php Laravel-如何通过选定的数据透视表获取价值,php,laravel,pivot,Php,Laravel,Pivot,我有三张桌子 users: id, full_name user_projects, user_id, project_id // Pivot table projects: id, name 在用户表中,我得到了10个用户 在项目A中,我希望3个用户执行项目A 然后我创建函数来存储项目A public function store(StoreRequest $request) { $data = $request->all(); try { $pro

我有三张桌子

users: id, full_name

user_projects, user_id, project_id // Pivot table

projects: id, name
在用户表中,我得到了10个用户

在项目A中,我希望3个用户执行项目A

然后我创建函数来存储项目A

public function store(StoreRequest $request)
{
    $data = $request->all();
    try {
        $project = new Project();
        $attribute = array_only($data, $project->getFillable());
        $project = $project->store($attribute);
        if (!empty($project)) {
            $project->user()->attach($request->user_id); // Insert to pivot table
        }
        return redirect()->route('project.index')->with('flashSuccess', 'Create is successful!.');
    } catch (Exception $ex) {
        Log::error($ex);
        return view('errors.404');
    }
}
然后,当我按Edit时,我想显示users表中的所有10个用户和加入项目A的3个用户(pivot表中的用户),其中已选择了该用户。


我可以在视图中选择所有加入项目A的用户,但我可以在用户表中显示所有其他用户

以下是我的看法:

<div class="col-md-4">
   <select id="dates-field2" name="user_id[]" class="multiselect-ui form-control" multiple="multiple">
       @foreach($project->user as $user)
          <option selected="selected" value="{{$user->id}}">{{$user->full_name}}</option>
       @endforeach

    </select>
 </div>

请提供帮助。

您可以检查您的用户是否已在当前项目中 ($project_id是您当前的项目)


@foreach($users作为$user)
projects->pull('project_id')->toArray())?'所选“:”}}value=“{{{$user->id}}”>{{{$user->full_name}
@endforeach

您可以检查您的用户是否已在当前项目中 ($project_id是您当前的项目)


@foreach($users作为$user)
projects->pull('project_id')->toArray())?'所选“:”}}value=“{{{$user->id}}”>{{{$user->full_name}
@endforeach

只需通过单独的查询选择所有用户。您能提供更多详细信息吗?关于什么的详细信息?如何查询数据库?Laravel手册充满了它。我可以在视图中选择所有加入项目A的用户,但我可以在用户表中显示所有其他用户。我不需要查询就可以得到这个。所以,如果你不需要查询,那么你需要什么?只需要用一个单独的查询选择所有用户。你能给我更多的细节吗?关于什么的细节?如何查询数据库?Laravel手册充满了它。我可以在视图中选择所有加入项目A的用户,但我可以在用户表中显示所有其他用户。我不需要查询就可以得到这个。所以,如果你不需要查询,那么你需要什么呢?
public function user()
{
    return $this->belongsToMany('App\User', 'user_projects');
}