dongyi7966 2014-05-22 04:59
浏览 21
已采纳

Laravel中注销时的验证错误

After upgrading to latest version of Laravel, I get an error message when I try to log out after being logged in.

My validation looks like this (I've put this in the User model):

public $errors;

protected static $rules = array(
    'name'       => 'required',
    'email'      => 'required,email',
    'company_id' => 'required,integer'
);

public static function boot()
{
    parent::boot();

    static::saved(function()
    {
        // Cache::forget('query.user.all');
    });

    static::saving(function($model)
    {
        return $model->validate();
    });
}

public function validate()
{
    $v = Validator::make($this->getAttributes(), static::$rules);

    if ($v->fails())
    {
        $this->errors = $v->messages();
        return FALSE;
    }

    return TRUE;
}

I think it's because the form input doesn't exist when logging out, so the validation fails. Is there a way to split the save function into one for logging in, and one for logging out?

Screen shot of error message

展开全部

  • 写回答

1条回答 默认 最新

  • duanbipu1720 2014-05-22 05:01
    关注

    The error says validateRequired,email does not exist.

    Thats because your validation rules dont look to be correct. You should spilt them with piping like | or you can put them as separate elements of an array.

    Change

    protected static $rules = array(
        'name'       => 'required',
        'email'      => 'required,email',
        'company_id' => 'required,integer'
    );
    

    to

    protected static $rules = array(
        'name'       => 'required',
        'email'      => 'required|email',
        'company_id' => 'required|integer'
    );
    

    or

    protected static $rules = array(
        'name'       => 'required',
        'email'      => array('required', 'email'),
        'company_id' => array('required', 'integer')
    );
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部