【问题标题】:SQLSTATE[42S02]: Base table or view not found: 1146 Table 'My_database_Name.posts' doesn't existSQLSTATE [42S02]:未找到基表或视图:1146 表“My_database_Name.posts”不存在
【发布时间】:2020-04-28 17:31:12
【问题描述】:

我尝试为用户表生成 CRUD。 当我尝试验证请求数据时,验证部分出现错误。

Illuminate \ Database \ QueryException (42S02) SQLSTATE[42S02]: Base 找不到表或视图:1146 表 'My_database_Name.posts' 没有 存在 (SQL: select count(*) as aggregate from posts where usr_email = testingadmin@test.com) 以前的例外情况

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'My_database_name.posts' doesn't exist (42S02)

如果我删除验证部分,代码对我来说可以正常工作。

谢谢。

我的 Controller 的 update() 代码是

public function update( Request $request ,$user)
    {
        $request->validate([
            'usr_first_name' => 'required',
            'usr_last_name' => 'required',
            'usr_email' => 'required|unique:posts',
            'usr_phone' => 'required|numeric|min:2|max:5',
            'usr_address' => 'required',
            'usr_type' => 'required',
        ]);
        $user = User::where('id', $user)->first();

        $user->firstname    = $request->input('usr_first_name');
        $user->lastname     = $request->input('usr_last_name');
        $user->email        = $request->input('usr_email');
        $user->phone        = $request->input('usr_phone');
        $user->address      = $request->input('usr_address');
        $user->type         = $request->input('usr_type');
        $user->save();

        return redirect()->action('UserController@index');
    }

【问题讨论】:

  • 你能粘贴你的代码吗?
  • 从您粘贴的错误消息中,我认为这与唯一规则验证有关
  • @Fouèd Moussi 感谢您的建议,我得到了代码错误

标签: php laravel laravel-5


【解决方案1】:

我猜你的usr_email属性不属于posts表,它属于users表($user->email = $request->input('usr_email');

修复

//...
'usr_email' => 'required|unique:users,email',
//..

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 2018-04-19
    • 2015-10-05
    • 2018-06-30
    • 2021-05-13
    • 2021-10-17
    • 2015-09-22
    相关资源
    最近更新 更多