Привет, небольшой обзор проекта, который я хочу сделать. Я хочу показать команды пользователя.
Когда пользователь вошел в систему и открыл страницу viewteams
. Он должен показать команды, которые он присоединился / создал. Для этого я выполнил следующие процессы ...
мой ViewTeamController
{
public function index()
{
$user=User::first();
$teams=Team::all();
$user->teams()->attach($teams);
return view('teams.viewteams',compact('teams'));
}
public function store()
{
}
}
моя модель пользователя
public function teams(){
return $this->belongsToMany(Team::class,'team_user','teams_id','users_id');
}
модель моей команды
public function users(){
return $this->belongsToMany(User::class,'team_user','teams_id','users_id');
}
моя миграция сводной таблицы
public function up()
{
Schema::create('team_user', function (Blueprint $table) {
$table->unsignedBigInteger('users_id');
$table->unsignedBigInteger('teams_id');
$table->index('users_id');
$table->index('teams_id');
$table->timestamps();
});
}
веб. php маршруты
Route::get('/viewteams','ViewTeamController@index');
Route::post('/viewteams','ViewTeamController@store');
my 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 ($teams as $team)
@foreach($team->users as $user)
{{$user->org_name}}
@endforeach
@endforeach
</div>
</div>
</div>
</div>
</div>
@endsection
мой другой контроллер для создания команды
<?php
namespace App\Http\Controllers;
use App\Team;
use Illuminate\Http\Request;
class CreateTeamController extends Controller
{
public function index(Request $request)
{
return view('teams.createteams');
}
public function store(Request $request)
{
$team=Team::create($request->all());
return redirect()->route('home');
}
}
все мои маршруты
Route::get('/login', function () {
return view('auth/login');
});
Auth::routes();
Route::get('/viewteams','ViewTeamController@index');
Route::post('/viewteams','ViewTeamController@store');
Route::get('/createteams','CreateTeamController@index');
Route::post('/createteams','CreateTeamController@store') ;
Route::get('/home', 'HomeController@index')->name('home');