2017-01-25 12 views
0

Laravel 5.3。私はそれを正しく取得するが、テーブル(ユーザテーブル)のprimaryKeyの値が間違っている。それは非常に奇妙です。ここでLaravel 5.3はPrimeryKeyオブジェクトにアクセスできません

protected $table = 'users_tbl'; 
protected $primaryKey = "email"; 

コントローラ私のコードです:

$user = User::find('[email protected]'); 
dd($user); 


#table: "users_tbl" 
#primaryKey: "email" 
#fillable: array:8 [▶] 
#hidden: array:2 [▶] 
#connection: null 
#keyType: "int" 
#perPage: 15 
+incrementing: true 
+timestamps: true 
#attributes: array:15 [▼ 
    "email" => "[email protected]" 
    "register" => "1892" 
    "section" => "GO" 
    "turn" => 92 
    ... 

出力正しくメールが、私は0を取得するオブジェクトを介してアクセスした場合しかし、残りの属性はOKです:

echo $user->email; 
echo "<br>"; 
echo $user->register; 
echo "<br>"; 
echo $user->section; 
echo "<br>"; 
echo $user->turn; 
echo "<br>"; 
exit; 

出力

0 
1892 
GO 
92 

何が起こっているの?

答えて

0

laravelが自動的に増分されたIDを検索しないように、増分をfalseに設定するのを忘れていると思います。

これは前に私に起こり、私を夢中にさせたものです!私はクレイジーになっていた

public $incrementing = false; 
+1

感謝の男:あなたのUser.phpモデルに

は、この行を追加します。これはlaravelの文書ではっきりしています。しかし、私は他のlaravelのプロジェクトでこのセットを持っていないし、彼らは大丈夫です。常にバージョン5.2以下。 – user3604672

関連する問題