PHP Laravel 6 추천 영화 투고 사이트 작성 과정 4 : 투고 기능 작성 편

3989 단어 PHPLaravel6

라우팅



등록 화면에는 create를 사용합니다.
| GET|HEAD  | recommends/create           | recommends.create  | App\Http\Controllers\RecommendController@create                        | web          |

DB에 등록하려면 store를 사용합니다.
| POST      | recommends                  | recommends.store   | App\Http\Controllers\RecommendController@store                         | web          |

view 파일 만들기




등록이 필요한 내용을 뷰 파일로 설정합시다.
이번에는 다음 내용을 등록 대상으로 합니다.
※화상 업로드에 관해서는, 나중에 편집합니다


등록할 내용


영화 제목

영화 URL

영화 개요

감상


form 태그로 입력 데이터를 recommends.store로 보내기



@csrf 을 잊지 않도록 합시다. ※부정한 동작을 막기 위해서 기재합니다. 자세한 내용은 Google에서 검색하세요.

recommend/resources/views/recommends/create.blade.php
<form method="POST" action="{{route('recommends.store')}}">
@csrf
 <table>
   <thead>
     <tr>
       <th>タイトル</th>
       <th>映画URL</th>
       <th>概要</th>
       <th>感想</th>
     </tr>
     <tr>
       <th><input type="text" name='title'></th>
       <th><input type="URL" name='url'></th>
       <th><textarea name="description" id="" cols="30" rows="10"></textarea></th>
       <th><textarea name="Impressions" id="" cols="30" rows="10"></textarea></th>
       </tr>
  </thead>
 </table>
 <button type="submit">登録</button>
 <a href="{{route('recommends.index')}}">一覧に戻る</a>
</form>

레코드 저장 처리



레코드를 저장하려면 Model의 크리에이트 메소드를 사용합니다.
등록 후 index 페이지로 리디렉션했습니다.

recommend/app/Http/Controllers/RecommendController.php
public function store(Request $request)
    {
        Recommend::create($request->all());
        return redirect()->route('recommends.index');
    }

한편, all로 정보를 취득했을 경우, 거기에는 모든 정보가 포함되어 있으므로, 어느 정보를 등록할지 Model로 지정할 필요가 있습니다.

recommend/app/Models/Recommend.php
class Recommend extends Model
{
    protected $fillable = [
      'title',
      'image_file_name',
      'image_title',
      'url',
      'description',
      'Impressions'
    ];
}

좋은 웹페이지 즐겨찾기