2015-02-06 49 views
-2

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

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

我得到这个错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'users.id' in 'where clause' (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()错误,任何一个可以帮助?

回答

0

User模型和

放,

protected $primaryKey = 'user_id'; 

可能是你User模型的主键是id为默认值,如果ü没有改变。并且好像将表中的主键更改为user_id,因此您需要将上述主键指定为与实际表匹配。

检查laravel doc here

+0

是的,现在工作得很好:) – 2015-02-06 09:26:36

+0

它很乐意帮助你:) – 2015-02-06 09:28:06