Я пытаюсь создать систему заявок и работаю над тем, чтобы показать билеты, которые есть у пользователя.Теперь отношения работают так, что билеты назначаются пользователю, который затем назначается в кампусе.На самом деле мне нужно, чтобы билеты были назначены на кампус, так как кампус определен, и на этот кампус назначена технология.Технология должна видеть только билеты, принадлежащие кампусу, которому она назначена.
Теоретически, она должна работать так, как если бы пользователь был изменен или перемещен, тогда все, что нужно сделать, это обновить TechID
столбец.Вот как в настоящее время работает соотношение таблиц:
- Билеты (PK - TicketID, FK - CampusID)
- Кампус (PK - CampusID, FK - TechID)
- Пользователь (PK - TechID)
На самом деле у меня есть похожий вопрос, который я задавал ранее, но это было до того, как я понял, что то, как он был структурирован раньше, не идеальная настройка.
Вот ссылка на предыдущий вопрос: Предыдущий вопрос
Вот мой текущий контроллер:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Auth;
use App\User;
use App\Campus;
use App\Ticket;
class PagesController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('auth');
}
// Dashboard Page
public function index()
{
$user = User::with(['campuses' => function($query) {
$query->select(['TechID', 'CampusName']);
},'tickets'])->where('id', Auth::id())->first();
$campuses = Campus::all()->where('TechID', $user->id);
$tickets = Ticket::all()->where('CampusID', $campuses->pluck('CampusID'));
return view('home')->with([
'user' => $user,
'campuses'=>$campuses,
'tickets'=>$tickets]);
}
// Queue Page
public function Queue() {
return view('Pages.Queue');
}
// Reports Page
public function Reports() {
return view('Pages.Reports');
}
// Search Page
public function Search() {
return view('Pages.Search');
}
}
Я надеялся, что это сработает, но билетов нетна самом деле показатьУ пользователя может быть более одного кампуса, поэтому мне было интересно, может быть, здесь что-то не так.Любая помощь очень ценится