Inertia/Laravel PATCH 리디렉션도 리퍼러 업데이트를 시도합니다.
P粉265724930
2023-09-04 11:56:57
<p>일부 모델을 업데이트하기 위해 Vue 프런트엔드에서 Axios 요청을 수행하는 Laravel/InertiaJS 애플리케이션이 있습니다. 제 경우에는 제안과 관련된 <strong>작업</strong>도 표시하는 <strong>제안</strong> 표시 페이지가 있습니다. </p>
<p>특정 작업을 업데이트하기 위해 Axios 호출을 수행하는 Vue 하위 구성요소가 있습니다.</p>
<pre class="brush:php;toolbar:false;">const moveToNextStatus = (상태) =>
console.log('실행')
// axios를 사용하여 작업 상태를 업데이트합니다.
axios.patch(`/data/tasks/${props.task.id}`, {
상태: 상태
})
}</pre>
<p>다음은 가리키는 경로입니다:</p>
<pre class="brush:php;toolbar:false;">Route::patch('/data/tasks/{task}', [AppHttpControllersTaskController::class, 'update'])->name(' tasks.update');</pre>
<p>그런 다음 내 Laravel <strong>TaskController</strong>에서 업데이트 방법은 다음과 같습니다.</p>
<pre class="brush:php;toolbar:false;">공개 함수 업데이트(요청 $request, 작업 $task)
{
$task->update($request->all());
return 리디렉션()->back();
}</pre>
<p>어떤 이유에서인지 Axios의 PATCH /tasks/{task} 요청이 실행되면 <strong>PATCH /proposals/{proposal}</strong> 경로도 호출하고 실패한 제안을 업데이트하려고 시도합니다. <
<p>이것이 하위 구성 요소에서 리디렉션하는 것과 관련이 있는 것일까요? 누구든지 나를 도와줄 수 있나요? </p>
Inertia의 문서에 따르면
이 내용은 여기 문서에서 찾을 수 있습니다: https://inertiajs.com/redirects
또한 리디렉션을 위해 다음과 같은 비표준 도우미를 사용할 것으로 예상됩니다. 으아악
동의하지 않지만 그대로입니다. 페이지가 전혀 리디렉션되지 않을 때 303을 사용하는 것은 네트워크 상태 코드 표준을 위반하는 것 같습니다.