kesalahan 404 halaman tidak ditemukan (laravel 5.8) (seperti rute tombol)

Saya ingin menambahkan tombol suka ke postingan saya tetapi ketika saya mengklik tombol tersebut muncul kesalahan 404.

ini pandanganku

<form action="{{route('user.like', ['postId' => $post->id, 'userId' => Auth::user()->id])}}" method="POST">
@csrf
<input class="btn btn-success" type="submit" role="button" value="like"/>
</form>

rute

Route::post('/user{userId}/post{postId}/like',[
    'uses' => 'postController@like',
    'as' => 'user.like'
]);

dan ini pengontrol saya

    public function like($postId, $userId){
        $user = User::findOrFail($userId);
        $user->votedPosts()->attach($postId);
        return redirect()->back();
    }

Saya benar-benar tidak tahu mengapa saya mendapatkan kesalahan 404.


person alien    schedule 17.09.2019    source sumber
comment
coba edit menjadi Route::post('like/{postId}/{userId}',[ 'uses' => 'postController@like', 'as' => 'user.like' ]);   -  person Joseph    schedule 18.09.2019
comment
terima kasih banyak. apakah Anda memiliki tautan atau sesuatu mengapa kami harus melakukannya dengan cara ini?   -  person alien    schedule 18.09.2019
comment
di rute Anda, Anda melewati userId lalu postId tetapi di pengontrol Anda, Anda melakukan yang sebaliknya   -  person Joseph    schedule 18.09.2019
comment
tolong tandai jawabannya sebagai diterima   -  person Joseph    schedule 18.09.2019
comment
Saya mencoba tetapi situs tersebut memberi saya peringatan dan dikatakan saya harus menunggu selama 3 menit!   -  person alien    schedule 18.09.2019
comment
kamu harus menunggu 3 menit :(   -  person Joseph    schedule 18.09.2019
comment
apakah kamu tahu kenapa aku harus menunggu?   -  person alien    schedule 18.09.2019
comment
benar-benar tidak, saya tidak melakukannya mungkin hanya untuk memeriksa jawaban terbaik   -  person Joseph    schedule 18.09.2019


Jawaban (1)


saat Anda mencoba mengikat variabel di rute Anda, itu ditulis dengan cara ini {userId} bukan userId{userId}

jadi akan menjadi seperti ini

Route::post('like/{postId}/{userId}',[ 
  'uses' => 'postController@like', 
   'as' => 'user.like' ]);

Anda dapat memeriksa selengkapnya di dokumen

person Joseph    schedule 17.09.2019