验证带有请求类的表单时,您可以使用validate()方法手动验证数据,但是您返回的内容我尝试返回$ this并返回$ this->错误但它只显示SQL完整性约束重复条目,这是正确的,但它不会显示我的错误表单。在控制器内部进行验证时,您将返回模型和错误,但我会返回什么,并在请求类中的validate方法上设置错误。
请求类:
namespace App\Http\Requests;
use App\Http\Requests\Request;
use Auth;
class ProductRequest extends Request
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
protected $action;
public function authorize()
{
if(Auth::check()) {
return true;
}
}
public function validate() {
$v = \Validator::make(parent::all(), $this->rules());
if ($v->passes()) return true;
$this->errors = $v->messages();
// tried returning $this; and $this->errors
return false;
}
public function all()
{
$data = parent::all();
if( $data['slug'] === '') {
// if the slug is blank, create one from title data
$data['slug'] = str_slug( $data['title'], '-' );
}
return $data;
}
public function messages()
{
}
public function rules() {
}
}
答案 0 :(得分:1)
你的规则方法是空的你没有验证你得到的任何错误是SQL异常而不是验证错误。