OZzy
OZzy

Reputation: 47

I can't transition to the Edit page

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

Answers (1)

Switi
Switi

Reputation: 379

    <form action="{{route('user.update', [ 'id'=>$user])}}" method="POST">

 <form action="{{route('user.update',$user->id)}}" method="POST">

Upvotes: 1

Related Questions