请你帮忙。 我想在我的edit.blade.php中的不同选项卡上显示不同的申请者,我只是想知道如何才能做到这一点? 请帮帮我。
controller.php
public function edit($id)
{
$applications = application::where('id', $id)->first();
return view('user.application.edit', compact('applications'));
}
edit.blade.php
<ul class="nav nav-tabs" role="tablist">
<li class="nav-item">
<a class="nav-link {{ request()->is('applicant1') ? 'active' : null }}" href="{{ url('applicant1') }}" role="tab">Main Applicant</a>
</li>
<li class="nav-item">
<a class="nav-link {{ request()->is('applicant2') ? 'active' : null }}" href="{{ url('applicant2') }}" role="tab">Applicant 2</a>
</li>
<li class="nav-item">
<a class="nav-link {{ request()->is('applicant3') ? 'active' : null }}" href="{{ url('applicant3') }}" role="tab">Applicant 3</a>
</li>
</ul><!-- Tab panes -->
<div class="tab-pane {{ request()->is('applicant1') ? 'active' : null }}" id="{{ url('applicant1') }}" role="tabpanel">
//FORM HERE
</div>
我在路由上也尝试了不同的方法。
Route::get('applicant1', 'ApplicationController@edit')->name('application.edit');
Route::get ('/applicant2', function () {
return view('application.edit');});
Route::get ('/applicant3', function () {
return view('application.edit');});
请帮帮我。
为什么不对每个申请者元素使用foreach?
在您的控制器中
public function edit($id)
{
$applications = application::all();
return view('user.application.edit', compact('applications'));
}
我认为:
<ul class="nav nav-tabs" role="tablist">
@foreach($applications as $applicant)
<li class="nav-item">
<a class="nav-link {{ request('id') == $applicant->id ? 'active' : ''}}" href="{{ route('application.edit', $applicant->id) }}" role="tab">Main Applicant</a>
</li>
@endforeach
</ul>
<div class="tab-content" id="myTabContent">
@foreach($applications as $applicant)
// the rest of panels
<div class="tab-pane fade show {{ request('id') == $applicant->id ? 'active' : '' }}" id="tab-{{ $loop->iteration }}" role="tabpanel"></div>
@endforeach
</div>
在routes.php中
Route::get('applicants/{id}', 'ApplicationController@edit')->name('application.edit');