「Php/laravel/laravel5/validation」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→エラー時に前回のpostをそのままに) |
(→エラー時に前回のpostをそのままに) |
||
行35: | 行35: | ||
==エラー時に前回のpostをそのままに== | ==エラー時に前回のpostをそのままに== | ||
+ | old()はRequest::old()のエイリアス、第2引数に初期値を入れる | ||
<nowiki><</nowiki>form method="post" action="/users"> | <nowiki><</nowiki>form method="post" action="/users"> | ||
<nowiki><</nowiki>div class="form-group @if(!empty($errors->first('name'))) has-error @endif"> | <nowiki><</nowiki>div class="form-group @if(!empty($errors->first('name'))) has-error @endif"> | ||
<nowiki><</nowiki>label>名前</label> | <nowiki><</nowiki>label>名前</label> | ||
− | <nowiki><</nowiki>input type="text" name="name" value="<nowiki>{{ | + | <nowiki><</nowiki>input type="text" name="name" value="<nowiki>{{old('name', $user->name)}}</nowiki>" class="form-control"> |
<nowiki><</nowiki>span class="help-block">{{$errors->first('name')}}</span> | <nowiki><</nowiki>span class="help-block">{{$errors->first('name')}}</span> | ||
</div> | </div> | ||
<nowiki><</nowiki>div class="form-group @if(!empty($errors->first('email'))) has-error @endif"> | <nowiki><</nowiki>div class="form-group @if(!empty($errors->first('email'))) has-error @endif"> | ||
<nowiki><</nowiki>label>Email</label> | <nowiki><</nowiki>label>Email</label> | ||
− | <nowiki><</nowiki>input type="text" name="email" value="<nowiki>{{ | + | <nowiki><</nowiki>input type="text" name="email" value="<nowiki>{{old('email', $user->email)}}</nowiki>" class="form-control"> |
<nowiki><</nowiki>span class="help-block">{{$errors->first('email')}}</span> | <nowiki><</nowiki>span class="help-block">{{$errors->first('email')}}</span> | ||
</div> | </div> |
2016年8月11日 (木) 14:06時点における版
ルール追加
public function store(Request $request) { $this->validate($request, [ 'title' => 'required|unique:posts|max:255', 'body' => 'required', 'day' => 'required|date_format:"Y/m/d"', ]);
テンプレートにエラー表示
@if (count($errors) > 0) <div class="alert alert-danger"> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif
エラーメッセージの日本語化
https://gist.github.com/syokunin/b37725686b5baf09255b
以下をjaに変更
vi config/app.php 'locale' => 'ja'
項目を日本語化
上記日本語化を入れた後
vi resources/lang/ja/validation.php 'attributes' => [ 'id' => 'ユーザID', 'password' => 'パスワード', ],
エラー時に前回のpostをそのままに
old()はRequest::old()のエイリアス、第2引数に初期値を入れる
<form method="post" action="/users"> <div class="form-group @if(!empty($errors->first('name'))) has-error @endif"> <label>名前</label> <input type="text" name="name" value="{{old('name', $user->name)}}" class="form-control"> <span class="help-block">{{$errors->first('name')}}</span> </div> <div class="form-group @if(!empty($errors->first('email'))) has-error @endif"> <label>Email</label> <input type="text" name="email" value="{{old('email', $user->email)}}" class="form-control"> <span class="help-block">{{$errors->first('email')}}</span> </div> <input type="hidden" name="_token" value="{{csrf_token()}}"> <input type="submit" value="登録" class="btn btn-primary"> </form>