概要
郵便番号マスタの機能を作成する。
welcome画面のtitle部分修正
事前作業として、タイトル部分修正。
呼び出し先画面でタイトル設定できるようにする。
<title>@yield('title')</title>
郵便番号マスタ 一覧画面
まずは、一覧の画面を作成。色々と思うところはあるが、まずは一覧で作成してみる。
郵便番号マスタへのhrefを設定
<a class="collapse-item" href="/maintenance/m_zip">郵便番号マスタ</a>
web.phpを設定
// マスタメンテナンス // * 社員マスタ Route::resource('maintenance/m_zip', 'MZipController');
controllerを設定
public function index() { $query = m_zip::query(); $m_zips = $query ->selectRaw('*') ->paginate(config('app.pageNum')) ; return view('maintenance.m_zip.index') -> with('m_zips', $m_zips) ; }
viewを設定
長いので割愛。 m_zipsが渡されてくる。
ばちぼこにレイアウト崩れた。
welcomeのcss/scriptの読み込み箇所の頭にスラッシュいれる。
下記は一例。
<!-- <link href="vendor/fontawesome-free/css/all.min.css" rel="stylesheet" type="text/css"> --> <link href="/vendor/fontawesome-free/css/all.min.css" rel="stylesheet" type="text/css"> …
とりあえず画面は出た。
一覧でDataTableの設定を忘れていることに気が付く。
諸々修正して(【Laravel】【PJ:TEST7】3.カスタマイズ基盤設定 に追記)、表示確認。
郵便番号マスタ アップロード画面
まずは恒例の初期画面から。
一覧画面からの遷移設定
<!-- アップロード --> <a href="/maintenance/m_zip/upload" class="d-none d-sm-inline-block btn btn-sm btn-primary shadow-sm"> <i class="fas fa-upload fa-sm text-white-50"></i> CSVアップロード</a>
正直コントローラー経由する必要ないかもしれないけれど、
機械的に一律この方式にしておく。
web.php
// * 郵便番号マスタ // index Route::get('maintenance/m_zip', 'MZipController@index'); // upload Route::get('maintenance/m_zip/upload', 'MZipController@upload');
いったん画面だけ取り付けて今回は終了にする。
@extends('welcome') @section('title', '郵便番号アップロード') @section('content') <!----------------------------> <!----- content -----> <!----------------------------> <!-- Begin Page Content --> <div class="container-fluid"> <!-- Content Row --> <div class="row"> <!-- タイトル --> <div class="col-xl-6 col-md-6 mb-4"> <h1 class="h2 mb-0 text-gray-800">郵便番号アップロード</h1> </div> <div class="col-xl-6 col-md-6 mb-4" align="right"> <!-- 戻る --> <a href="/maintenance/m_zip" class="d-none d-sm-inline-block btn btn-sm btn-primary shadow-sm"> <i class="fas fa-arrow-left fa-sm text-white-50"></i> 戻る</a> </div> </div> </div> <!-- Content Wrapper --> <div class="container-fluid"> <div class="upload"> <p>DBに追加したいCSVデータを選択してください。</p> <form action="/datamigration/upload/doupload" method="post" enctype="multipart/form-data"> @csrf <input type="file" name="csv_file" /> <button type="submit" class="btn btn-default btn-primary">データ取込</button> </form> </div> </div> @endsection