0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Laravel] CRUD 編集画面

Posted at

概要

よくあるCRUDの個人メモ。
編集画面からデータを変更できるまでの過程をまとめる。

前提条件

以下記事を参考に詳細画面を作成していること。
https://qiita.com/Hiroto10/items/566f817625d79d727299

Controller

tasks.edit及びtasks.updateの編集を行う。

app/Http/Controllers/TasksController.php

    public function edit($id)
    {
        $task = Task::findOrFail($id);

        return view('tasks.edit', [
            'task' =>  $task,
        ]);
    }

        $request->validate([
            'task' => 'required|max:255'
        ]);

        $task = Task::findOrFail($id);
        $task->task = $request->task;
        $task->save();

        return redirect('/');
    }

View

編集画面の作成を行う。

resources/views/tasks/edit.blade.php

@extends('layouts.app')

@section('content')
  <h1>タスク: {{ $task->task }} の編集</h1>
  <div class="row">
    {!! Form::model($task, ['route' => ['tasks.update',$task->id], 'method' => 'put']) !!}
      <div class="form-group">
        {!! Form::label('task', 'タスク') !!}
        {!! Form::text('task', null, ['class' => 'form-control']) !!}
      </div>
      {!! Form::submit('更新', ['class' => 'btn btn-primary']) !!}
    {!! Form::close() !!}
  </div>
@endsection

詳細画面に編集画面に遷移するボタンを配置する。

resources/views/tasks/show.blade.php
{!! link_to_route('tasks.edit', 'このタスクを編集', ['task' => $task->id], ['class' => 'btn btn-primary']) !!}

スクリーンショット 2020-10-03 17.55.38.png

編集画面よりdbの値を変更できていればok。


以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?