Php Laravel 5.4如何更新已登录的申请客人的个人资料
我是laravel的新手,我想让用户在登录时更新其个人资料。我想在更新用户配置文件时获取该用户的ID,但当我单击“编辑”视图以使用ID传递数据时,我出现以下错误: 以下是我的控制器的代码:Php Laravel 5.4如何更新已登录的申请客人的个人资料,php,laravel,laravel-5,laravel-5.4,Php,Laravel,Laravel 5,Laravel 5.4,我是laravel的新手,我想让用户在登录时更新其个人资料。我想在更新用户配置文件时获取该用户的ID,但当我单击“编辑”视图以使用ID传递数据时,我出现以下错误: 以下是我的控制器的代码: public function edit($id) { $applicant = $this->applicantRepository->findWithoutFail($id); if (empty($applicant)) {
public function edit($id)
{
$applicant = $this->applicantRepository->findWithoutFail($id);
if (empty($applicant)) {
Flash::error('Applicant');
return redirect(route('applicant.home'));
}
return view('applicant-dashboard.edit')->with('applicants', $applicant);
}
public function update($id, UpdateApplicantRequest $request)
{
$applicant = $this->applicantRepository->findWithoutFail($id);
if (empty($applicant)) {
Flash::error('Applicant not found');
return redirect(route('applicant.index'));
}
$input = $request->all();
$cashier = $this->applicantRepository->update([
'name' => $input['name'],
'email' => $input['email'],
'password' => bcrypt($input['password']),
'address' => $input['address'],
'cellphone_no' => $input['cellphone_no']], $id);
Flash::success('Profile updated successfully.');
return redirect(route('applicant.index'));
}
以下是我的路由文件中的代码:
Route::get('/edit', 'HomeController@edit')->name('applicant.edit');
以下是我的刀片文件中的代码:
@extends('layouts.app')
@section('content')
<section class="content-header">
<h1>
Applicant Profile
</h1>
</section>
<div class="content">
{{-- @include('adminlte-templates::common.errors') --}}
<div class="box box-primary">
<div class="box-body">
<div class="row" style="padding-left: 20px">
{!! Form::model($applicant, ['route' => ['applicant.update', $applicant->id], 'method' => 'patch']) !!}
@include('applicant-dashboard.fields')
{!! Form::close() !!}
</div>
</div>
</div>
</div>
@endsection
@extends('layouts.app'))
@节(“内容”)
申请人简介
{{--@include('adminlte-templates::common.errors')--}
{!!Form::model($applicator,['route'=>['applicator.update',$applicator->id],'method'=>'patch'])
@包括('applicator-dashboard.fields')
{!!Form::close()!!}
@端部
您需要将
id
传递到您的路线:
Route::get('/edit/{id}', 'HomeController@edit')->name('applicant.edit');
将ID传递到web.php:
Route::get('edit/{ID}', 'HomeController@edit')->name('applicant.edit');
我更改了它,但它显示:缺少[Route:applicator.edit][URI:applicator/edit/{id}]所需的参数。请将该错误的屏幕截图添加到您的帖子中好吗?我有一种感觉,你没有把身份证传递到某个地方的路线上。在你完成后,我会更新我的答案。在你的menu.php文件中,你必须有一个链接来编辑你的“申请人”是吗?所以,改变它,这样你也通过了申请人。比如:路线('applicator.edit',$applicator);很抱歉没有突出显示,我在手机上找不到回音。至少你可以帮忙。顺便说一句,我将把我的路线改为路线('applicator.edit',$applicator);在我的菜单文件中,将my web.php路由到/edit/{applicator}中,就像这样吗?至少您可以帮忙。顺便说一句,我将把我的路线改为路线('applicator.edit',$applicator);在我的菜单文件和ro中,我的web.php路由到/edit/{applicator}像这样?我这样做了,它在我的menu.blade.php中显示未定义的变量id,但我试图在我的控制器中传递用户登录的id
Route::get('edit/{ID}', 'HomeController@edit')->name('applicant.edit');