当前位置: 首页 > 知识库问答 >
问题:

'方法[validateString]不存在。'在laravel验证中

楚泳
2023-03-14

我想验证我的表单输入,但它抛出我这个错误在我的Laravel.log文件

生产错误:消息为“Method[validateString]不存在”的异常“BadMethodCallException”在C:\xamplep\htdocs\testing\vendor\laravel\framework\src\Illuminate\Validation\Validator.php中:2405

这是我的狗模型

class Dog extends Eloquent {

// Add your validation rules here
public static $rules = [
    'name' => 'required|string',
    'age' => 'required|integer'
];

public static $customMessages = array(
    'required' => 'Man the Name atribute is REQUIRED. Fill it man.'
);

// Don't forget to fill this array
protected $fillable = ['name', 'age'];


public static function validate($data) {
    return Validator::make($data, static::$rules);
}

}

在我的DogsController中,我验证了我的数据

public function update($id)
{

    $dog = $this->DogRepo->find($id);

    if($dog)
    {   
        // $dog = $this->dogRepo->update(array_merge(['id' => $id], Input::all()));

        $validation = Dog::validate(Input::all());

        if ($validation->fails()) {
            return 'wrong data';
        } else {
            return 'ok data';
        }


        if($dog->save())
        {
            return Redirect::route('dogs.show', $id)->with('message', 'The dog has been updated!');
        }

        return Redirect::route('dogs.edit', $id)->withInput()->withErrors($this->dogRepo->errors());
    }

    App::abort(404);

}

知道我哪里做错了吗?

非常感谢您的帮助。

共有1个答案

殳智志
2023-03-14

在拉拉维尔

没有名为<code>string</code>的验证规则。

Laravel 4.1 -验证-可用规则

在拉拉维尔

更新以反映Laravel的更新版本。

 类似资料:
  • 我有一个非常奇怪的问题。当我提交表单时,它抛出一个服务器端验证错误。 这是我的简单控制器: 提交表格给我: BadMethodCallException方法验证不存在。 它的工作原理应符合: https://laravel.com/docs/5.4/validation

  • 我最近克隆了一个Laravel 5.2项目。运行后,我一直得到以下错误后,每个Artisan命令,并试图访问应用程序: 方法auth不存在 我可以在网上找到类似的“方法不存在”问题,但关于“auth”一点也没有。我相信所提到的“auth”类是一个内置类,可以用作各种路由的中间件。但是,我不知道如何解决这个问题。 我尝试过: 作曲家转储-自动加载-o 删除供应商库并重新安装作曲家 重置到远程分支 重

  • 我有一个非常奇怪的问题。当我提交表单时,它会引发服务器端验证错误。 BadMethodCallException 方法[validation必需]不存在。 我的控制器: 控制器在方法

  • 我正在尝试测试boot()static::deleting方法,该方法在通过Eloquent删除模型时应该触发。 tinker

  • 我已经创建了一个视图来创建新的课程' create.blade.php '。我试图将这些数据存储在数据库中,但是我得到了以下错误: BadMethodCallException Method Illuminate\Http\Request::request 不存在。 我不确定是什么导致了这个错误,因为我已经在我的控制器中引用了请求名称空间。见下文; CoursesController.php; 创

  • 我在 Laravel-5.8 中有这个更新控制器 视角 当我提交表单时,我收到了以下错误: BadMethodCallException:Method Illuminate \ Database \口才\集合::更新不存在app \ Http \ Controllers \ Leave \ leavetypescontroller . PHP(268):Illuminate \ Support \