首页 文章

User :: find($ id)不起作用

提问于
浏览
-2

当我尝试 User::find($id) 获取此功能的用户名时:

public function ShowUName()
    {
       $user = User::find(1);
       var_dump($user->user_name);
    }

我收到此错误:

SQLSTATE [42S22]:未找到列:1054'where子句'中的未知列'users.id'(SQL:select * from users where users.id = 1 limit 1)

但是这个很好用并返回 user_name

public function ShowUName()
    {
        $users = User::where('user_id', '=', 1)->get();

        foreach ($users as $user)
        {
          var_dump($user->user_name);
        }
    }

find() 的错误't know where',任何人都可以帮忙吗?

1 回答

  • 0

    转到 User 型号和

    放,

    protected $primaryKey = 'user_id';
    

    可能是你的 User 模型的主键是 id 默认如果你没有改变 . 并且似乎您将表中的主键更改为 user_id ,因此您需要指定上面的主键以匹配实际表 .

    检查laravel doc here

相关问题