Reputation: 47
New to Laravel here. When I press the "Edit Account " button. but I can't to transition to edit page, will taransion to http: // localhost: to the 8000 / bbs. The page is refreshed and returns to the same page.It seems like redirect. Please can you give me some tip and help?
I created edit.blade.php below. laravel-app/resources/views/user/edit.blade.php
UserController:
/**
* user edit action
*/
public function edit($id)
{
$user = User::find($id);
$viewParams = [
'user' => $user,
];
return view('user.edit', $viewParams);
}
app.blade.php:
<li class="nav-item dropdown">
<a id="navbarDropdown" class="nav-link dropdown-toggle" href="#" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" v-pre>
User Account info <span class="caret"></span>
</a>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{{route('user.edit', ['user' => Auth::user()->id])}}">Edit Account</a>
laravel-app/resources/views/user/edit.blade.php
@endif
<form action="{{route('user.update', ['user' => $user->id])}}" method="POST">
@csrf
@method('PATCH')
<div class="form-group">
<label for="name">Name</label>
<input type="text" id="name" name="name" value="{{old('name', $user->name)}}" class="form-control">
</div>
<div class="form-group">
<label for="email">E-Mail</label>
<input type="text" id="email" name="email" value="{{old('email', $user->email)}}" class="form-control">
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" id="password" name="password" value="{{old('password')}}" class="form-control">
</div>
<div class="form-group">
<label for="password">Password Confirmation</label>
<input type="password" id="password_confirmation" name="password_confirmation" value="{{old('password_confirmation')}}" class="form-control">
</div>
<button type="submit" class="btn btn-primary">Edit</button>
Route::group(['middleware' => 'guest'], function() {
Route::get('/', 'UserController@signin')->name('user.signin');
Route::post('/user/login', 'UserController@login')->name('user.login');
Route::resource('user', 'UserController', ['only' => ['create', 'store']]);
});
Route::group(['middleware' => 'auth'], function() {
Route::get('/post/index', 'PostsController@index')->name('bbs.index');
Route::post('/user/logout', 'UserController@logout')->name('user.logout');
Route::resource('user', 'UserController', ['only' => ['index', 'edit', 'update', 'destroy']]);
});
/Users/wataruojima/laravel-docker-workspace/laravel-app/app/User.php
public function userSave($params)
{
$isRegist = $this->fill($params)->save();
return $isRegist;
}
}
Upvotes: 0
Views: 57
Reputation: 379
<form action="{{route('user.update', [ 'id'=>$user])}}" method="POST">
<form action="{{route('user.update',$user->id)}}" method="POST">
Upvotes: 1