【发布时间】:2020-03-08 20:40:01
【问题描述】:
很抱歉抽象标题,但我无法解释我想要的标题。我想要登录的用户 1)创建一个团队 2)查看他的团队,我已经完成了布局和创建团队功能.但我不明白如何显示当前登录用户的团队。
我的创建团队控制器
public function store(Request $request)
{
$team=Team::create($request->all());
return redirect()->route('view');
}
我的 ViewTeamController(我认为这是错误的部分,它显示了所有团队,但我只想要登录用户的所有团队)
public function index()
{
$user=User::find(Auth::id());
$teams=Team::all();
$user->teams()->sync($teams);
$user = User::with('teams')->find(Auth::id());
return view('teams.viewteams',compact('user'));
}
我的 team.php 模型
class Team extends Model
{
protected $fillable = [
'team_name', 'desc',
];
protected $table='teams';
public function users(){
return $this->belongsToMany(User::class,'team_user','users_id','teams_id');
}
}
我的 User.php 模型
public function teams(){
return $this->belongsToMany(Team::class,'team_user','users_id','teams_id');
}
我的 createteams.blade.php 视图
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header"><h2 style="text-align:center;">Create Your Own Team</h2></div>
<div class="card-body">
<form method="POST" action="createteams">
@csrf
<div class="form-group row">
<label for="team_name" class="col-md-4 col-form-label text-md-right">Team Name</label>
<div class="col-md-6">
<input id="team_name" type="text" class="form-control @error('team_name') is-invalid @enderror" name="team_name" value="{{ old('team_name') }}" required autocomplete="team_name" autofocus>
@error('team_name')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row">
<label for="desc" class="col-md-4 col-form-label text-md-right">{{ __('Team Description') }}</label>
<div class="col-md-6">
<input id="desc" type="text" name="desc" class="form-control @error('desc') is-invalid @enderror"value="{{ old('desc') }}">
@error('desc')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row">
<label for="org_select" class="col-md-4 col-form-label text-md-right">{{ __('Select up to 4 Orgs') }}<br>Hold Ctrl For multiple selection</label>
<div class="col-md-6">
<select id="org_select" multiple class="form-control" name="org_select" value="{{ old('org_select') }}" autocomplete="org_select">
<option value= "frederick">Frederick</option>
<option value="I dont know">Cyprus Uni</option>
</select>
@error('org_select')
<span class="invalid-feedback" role="alert">
<strong>{{ $message }}</strong>
</span>
@enderror
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
Confirm
</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection
我的 viewteams.blade.php 视图
@extends('layouts.app')
@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header"><h2 style="text-align:center;">Your Teams</h2></div>
<div class="card-body">
@foreach ($user->teams as $team)
{{$team->team_name}}
@endforeach
</div>
</div>
</div>
</div>
</div>
@endsection
【问题讨论】: