Laravel5 表单验证问题
为什么设置了表单验证的attributes仍然不显示其设定的值?
如图所示:
设置了
<code>$attributes = array( "title" => '标题', 'content' => '正文' );</code>
提示仍然是title 不能小于10个字
而不是标题 不能小于10个字
有用过的大神知道是怎么回事没。
貌似图片挂了,截图:http://7xjkan.com1.z0.glb.clouddn.com/QQ%E5%9B%BE%E7%89%8720151026170220.png
controller:
<code> public function update(Request $request,$id) { $rules = array( 'title' => 'required|max:255|min:10', 'content' => 'required|min:50|max:20000', ); $message = array( "title.required"=> ":attribute 不能为空", "title.min"=> ":attribute 不能小于10个字", "title.max"=> ":attribute 不能超过50个字", "content.required"=>":attribute 不能为空", "content.min"=>":attribute 不能小于50个字", "content.max"=>":attribute 不能超过20000个字" ); $attributes = array( "title" => '标题', 'content' => '正文' ); /*$this->validate($request, [ 'title' => 'required|max:255|min:5', 'content' => 'required', ]);*/ $this->validate($request,$rules,$message,$attributes); $article = Article::find($id); $article->title = \Input::get('title'); $article->content = \Input::get('content'); if ($article->save()) { return \Redirect::to('article'); } else { return \Redirect::back()->withInput()->withErrors('保存失败!'); } }</code>
视图:
<code>@extends('app') @section('content') <div class="container"> <h1 id="Article">Article</h1> <div class="row"> <div class="col-md-4"></div> <div class="col-md-4"> @if (count($errors) > 0) <div class="alert alert-danger"> <strong>Whoops!</strong> There were some problems with your input.<br><br> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif <form action="%7B%7B%20URL('article/'.%24article->id)%20%7D%7D" method="POST"> <input name="_method" type="hidden" value="PUT"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <input type="text" name="title" class="form-control" required="required" value="{{ $article->title }}"> <br> <textarea name="content" rows="10" class="form-control" required="required">{{ $article->content }}</textarea> <br> <button class="btn btn-lg btn-info">编辑 Page</button> </form> </div> <div class="col-md-4"></div> </div> </div> @stop</code>
回复内容:
为什么设置了表单验证的attributes仍然不显示其设定的值?
如图所示:
设置了
<code>$attributes = array( "title" => '标题', 'content' => '正文' );</code>
提示仍然是title 不能小于10个字
而不是标题 不能小于10个字
有用过的大神知道是怎么回事没。
貌似图片挂了,截图:http://7xjkan.com1.z0.glb.clouddn.com/QQ%E5%9B%BE%E7%89%8720151026170220.png
controller:
<code> public function update(Request $request,$id) { $rules = array( 'title' => 'required|max:255|min:10', 'content' => 'required|min:50|max:20000', ); $message = array( "title.required"=> ":attribute 不能为空", "title.min"=> ":attribute 不能小于10个字", "title.max"=> ":attribute 不能超过50个字", "content.required"=>":attribute 不能为空", "content.min"=>":attribute 不能小于50个字", "content.max"=>":attribute 不能超过20000个字" ); $attributes = array( "title" => '标题', 'content' => '正文' ); /*$this->validate($request, [ 'title' => 'required|max:255|min:5', 'content' => 'required', ]);*/ $this->validate($request,$rules,$message,$attributes); $article = Article::find($id); $article->title = \Input::get('title'); $article->content = \Input::get('content'); if ($article->save()) { return \Redirect::to('article'); } else { return \Redirect::back()->withInput()->withErrors('保存失败!'); } }</code>
视图:
<code>@extends('app') @section('content') <div class="container"> <h1 id="Article">Article</h1> <div class="row"> <div class="col-md-4"></div> <div class="col-md-4"> @if (count($errors) > 0) <div class="alert alert-danger"> <strong>Whoops!</strong> There were some problems with your input.<br><br> <ul> @foreach ($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif <form action="%7B%7B%20URL('article/'.%24article->id)%20%7D%7D" method="POST"> <input name="_method" type="hidden" value="PUT"> <input type="hidden" name="_token" value="{{ csrf_token() }}"> <input type="text" name="title" class="form-control" required="required" value="{{ $article->title }}"> <br> <textarea name="content" rows="10" class="form-control" required="required">{{ $article->content }}</textarea> <br> <button class="btn btn-lg btn-info">编辑 Page</button> </form> </div> <div class="col-md-4"></div> </div> </div> @stop</code>
<code>'custom' => [ 'title' => [ 'required' => '标题不能为空', ], ],</code>
找到resources/lang/en/validation.php
中的custome,这个满足你的要求不?更多的Laravel 5教程:
https://laravist.com/series/laravel-5-basic

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP仍然流行的原因是其易用性、靈活性和強大的生態系統。 1)易用性和簡單語法使其成為初學者的首選。 2)與web開發緊密結合,處理HTTP請求和數據庫交互出色。 3)龐大的生態系統提供了豐富的工具和庫。 4)活躍的社區和開源性質使其適應新需求和技術趨勢。

IIS和PHP可以兼容,通過FastCGI實現。 1.IIS通過配置文件將.php文件請求轉發給FastCGI模塊。 2.FastCGI模塊啟動PHP進程處理請求,提高性能和穩定性。 3.實際應用中需注意配置細節、錯誤調試和性能優化。

Laravel適合團隊熟悉PHP且需功能豐富的項目,Python框架則視項目需求而定。 1.Laravel提供優雅語法和豐富功能,適合需要快速開發和靈活性的項目。 2.Django適合複雜應用,因其“電池包含”理念。 3.Flask適用於快速原型和小型項目,提供極大靈活性。

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

Laravel優化Web開發流程的方法包括:1.使用路由系統管理URL結構;2.利用Blade模板引擎簡化視圖開發;3.通過隊列處理耗時任務;4.使用EloquentORM簡化數據庫操作;5.遵循最佳實踐提高代碼質量和可維護性。

最新版本的Laravel10與MySQL5.7及以上、PostgreSQL9.6及以上、SQLite3.8.8及以上、SQLServer2017及以上兼容。這些版本選擇是因為它們支持Laravel的ORM功能,如MySQL5.7的JSON數據類型,提升了查詢和存儲效率。

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

Laravel和Yii的主要區別在於設計理念、功能特性和使用場景。 1.Laravel注重開發的簡潔和愉悅,提供豐富的功能如EloquentORM和Artisan工具,適合快速開發和初學者。 2.Yii強調性能和效率,適用於高負載應用,提供高效的ActiveRecord和緩存系統,但學習曲線較陡。
