完了するタスクのステータスを変更したい。データベースにstatus_id列があり、1はcompleteに相当します。ボタンをクリックしてstatus_idを1に変更したい
私のルート
Route::patch('/tasks/completed/{Task}', 'TasksController@completedUpdate')->name('completedUpdate');
私のボタン
<form action="{{ route('completedUpdate', $task->id) }}" method="POST">
{{ csrf_field() }}
{{ method_field('PATCH') }}
<button type="submit" class="button is-inverted" style="margin-top: 10px;">Mark Complete</button>
</form>
私のコントローラー
public function completedUpdate(Request $request, $task)
{
$task->status_id = $request->status_id;
$task->save;
return redirect()->back()->with('message', 'task marked complete');
}
それが私に与えるエラーは次のとおりです。
非オブジェクトのプロパティを割り当てようとしました
さらに情報が必要な場合はお知らせください
変更する必要があります:
public function completedUpdate(Request $request, $task)
{
$task->status_id = $request->status_id;
$task->save;
return redirect()->back()->with('message', 'task marked complete');
}
に:
public function completedUpdate(Request $request, Task $task)
{
$task->status_id = $request->status_id;
$task->save();
return redirect()->back()->with('message', 'task marked complete');
}
したがって、$ task変数のタイプをタイプヒントしsave()
、save
プロパティの代わりにメソッドを使用する必要があります。
また、おそらく代わりに:
/tasks/completed/{Task}
使用する必要があります:
/tasks/completed/{task}
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加