SQLSTATE[42S02]:找不到基表或视图:1146 表 'ums.people' 不存在



我正在构建一个简单的注册和登录系统。我已经创建了表格和数据库。我的数据库名称是"ums"表名是"persons"。每当我单击注册按钮时,它都会显示:SQLSTATE[42S02]: Base table or view not found: 1146 table 'ums。"人"并不存在。我想将数据插入"persons"表格它在哪里找到人的桌子?这是我的控制器代码:

function regSubmit(Request $req)
{
@$this->validate($req,
[
"name"=>"required|max:20|regex:/^[a-zA-Z]+(([',. -][a-zA-Z ])?[a-zA-Z]*)*$/",
"email"=>"required|regex:/^([1-9]{2}-[0-9]{5}-[1-3]{1})@student.aiub.edu+$/",
"password"=>"required|min:8|regex:/^(?=.*d)(?=.*[a-z])(?=.*[A-Z])(?=.*[a-zA-Z]).{8,}$/",
"conf_password"=>"required|same:password",
"type"=>"required"

],
[
"name.required"=> "Please Enter Your Name",
"name.max"=> "Maximum 20 Characters",
"name.regex"=>"Please Enter A Valid Name",
"email.required"=>"Please Enter Your Email Address",
"email.regex"=>"Please Enter A Valid Email Address",
"password.required"=>"Please Enter A Password",
"password.min"=>"Minimum 8 Characters",
"password.regex"=>"password must contain a special character, a number and an uppercase letter",
"conf_password.required"=>"Please Confirm Your Password",
"conf_password.same"=>"Password do not match",
"type.required"=>"Please Enter User Type"
]
);

$p1 = new Person();
$p1->name = $req->name;
$p1->email = $req->email;
$p1->password = $req->password;
$p1->type = $req->type;
$p1->save();
return redirect('users.login');
}

下面是HTML表单:

@extends('layouts.logoutlay')
@section('content')
<form action ="{{route('users.reg.submit')}}" method="post" style="margin: auto; width: 220px;">
{{@csrf_field()}}
Name: <input type = "text" value = "{{old('name')}}" name ="name"></br>
@error('name')
<span class="text-danger">{{$message}}</span><br>
@enderror
Email: <input type = "text" value = "{{old('email')}}" name ="email"></br>
@error('email')
<span class="text-danger">{{$message}}</span><br>
@enderror
Password: <input type="password" value = "{{old('password')}}" name="password"></br>
@error('password')
<span class="text-danger">{{$message}}</span><br>
@enderror
Confirm Password : <input type="password" value = "{{old('conf_password')}}" name="conf_password"></br>
@error('conf_password')
<span class="text-danger">{{$message}}</span><br>
@enderror
Type : <input type="radio" value="user" name="type"> User  <input type="radio" value="admin" name="type"> Admin  </br>
@error('type')
<span class="text-danger">{{$message}}</span><br>
@enderror

</br>

<input type="submit" value="Register">
</form>
@endsection

Laravel Eloquent遵循模型类命名表的惯例——通常是模型类名的小写snake_case复数形式。

在本例中,模型名为Person和eloquent将尝试找到一个名为people的表。对于模型。如果您将表设置为personsmodelPerson您需要确保在模型类

上指定了表名
class Person extends Model
{
protected $table = 'persons';
// Rest of the model class code
}

Laravel Docs - Eloquent - Table Names

相关内容

最新更新