
ajax 코드
const confirmBtns = document.querySelectorAll('.confirm-btn');
confirmBtns.forEach((btn) => {
btn.addEventListener('click', (e) => {
console.log(btn.value);
const value = btn.value.split('/');
const commentStatus = value[0];
const commentId = value[1];
if (confirm('진행하시겠습니까?')) {
fetch("{{ route('comment.status') }}", {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-CSRF-TOKEN': '{{ csrf_token() }}'
},
body: JSON.stringify({
commentStatus: commentStatus,
commentId: commentId
})
})
.then(response => {
if (!response.ok) {
throw new Error('Failed comment status');
}
return response.json();
})
.then(data => {
console.log(data);
// 서버에서 반환한 데이터를 처리하는 코드
})
.catch(error => {
console.error(error);
// alert('error');
// location.reload();
});
Controller 코드
public function status(Request $request, comment $comment)
{
dd($request->all());
exit;
} //end status
이렇게 작성했는데
계속 500error 가 발생했다
그래서 구글링하니 laravel.log 를 살펴보래서 보니 local.ERROR: Target class [App\Http\Controllers\comment] does not exist. {"userId":4,"exception":"[object] (Illuminate\Contracts\Container\BindingResolutionException(code: 0): Target class [App\Http\Controllers\comment] does not exist. at C:\Users\5\Desktop\board_git03\vendor\laravel\framework\src\Illuminate\Container\Container.php:891) 이 라고 써져있엇음
말도안댐
말도안되는 이유
1. 앞에 기능들은 잘 동작했는데(등록, 삭제, 수정) 근데 상태변경만 안된다는 게 말이안댐
구글링해도 이상한 답만 나오는 것임 버전 변경, 설정 변경 등 그래서 몇개는 시도해봤는데 여전히 안돼서 그냥 기존에 동작하던 코드랑 최대한 맞춰보니 파라미터가 달라서 그랬던 것이엇음
public function status(Request $request, comment $comment)
{
dd($request->all());
exit;
} //end status
에서
public function status(Request $request)
{
dd($request->all());
exit;
} //end status
으로 변경함
없는 거 받으려고 하니까 그랬던 거 같다.

정상적으로 동작함
그럼 다른 기능들은 어떻게 개발했냐?!?
라고 하면 진짜 우연찮게 알맞은 파라미터들만 넘겨줬기 때문
결론 : Document를 잘보자
좋은 글 감사합니다.