お世話になっております。
今、laravelで画像のアップロードをするフォームを作成しています。
しかし、バリデーションの際、ラベル部分やプレースホルダの文字は
赤文字で表示されるものの、肝心のmessageが出力できません。
お分かりの方、居られましたらご教示下さい。
宜しくお願い致します。
●Routing
Route::match(['GET', 'POST'], 'uploader2/index','Uploader2Controller@getIndex'); Route::post('confirm2', 'Uploader2Controller@confirm'); //入力
●入力フォーム
@extends('layouts.master_request') @section('title', 'Laravel test') @section('content') <h1>プロフィール画像</h1> <p><span class="label label-danger">入力画面</span> -> 確認画面 -> 完了画面</p> <form action="/confirm2" method="post" class="form-horizontal"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <input type="hidden" name="_method" value=""> <div class="form-group @if($errors->has('username')) has-error @endif"> <label class="col-sm-2 control-label" for="username">名 前</label> <div class="col-sm-6"> <input type="text" class="form-control" id="username" name="username" placeholder="名前を入力" value="{{ old('username') }}"> @if($errors->has('username'))<span class="text-dager">{{$errors->first('username')}}</sapn> @endif </div> </div> <div class="form-group @if($errors->has('img_file')) has-error @endif"> <label class="col-sm-2 control-label" for="img_file"> アプロード画像 <br> (150×150) <br> PNG/JPG/GIFのみ可 </label> <div class="col-sm-6"> <input type="file" id="img_file" name="img_file" size="50"> @if($errors->has('img_file'))<span class="text-dager">{{$errors->first('img_file')}}</span> @endif </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10 text-center"> <input type="submit" name="button1" value="確 認" class="btn btn-primary btn-wide" /> </div> </div> </form> @endsection
●Request(UploaderRequest2.php)
<?php namespace App\Http\Requests; use Illuminate\Foundation\Http\FormRequest; class UploaderRequest2 extends FormRequest { /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { return [ 'username'=>'required', 'img_file'=>'required|image', ]; } public function messages() { return [ "required" => "必須項目です!!", "image" => "指定されたファイルが画像(jpg,png,bmp,svg)ではありません!!", ]; } }
●Controller(Uploader2Controller.php)
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\TUploader; use App\Http\Requests\UploaderRequest2; class Uploader2Controller extends Controller { public function getIndex() { $uploader = \App\Tuploader::orderBy('created_at','desc')->paginate(5); return view('new_photos.index')->with('img_groups',$uploader); } public function confirm(\App\Http\Requests\UploaderRequest2 $request) { $data=$request->all(); return view('new_photos.confirm')->with($data); } }
回答1件
あなたの回答
tips
プレビュー