Userモデルを認識していない:ポリモーフィック関係 - 保存morphTo()カスタム主キー
public function userable()
{
return $this->morphTo();
}
メンター・グラフィックス・モデルは:
public function user()
{
return $this->morphOne('App\Models\User', 'userable');
}
学生モデルはメンターモデルと同じに見えます。
生徒とメンターの表には、ユーザー表の主キーを参照するuser_idというカスタムPKが含まれています。
それでは、私がやろうとしていることは以下の通りです:
$user = new User();
$user->first_name = 'Trajce';
$user->last_name = 'Petkoski';
$user->nickname = 'ads';
$user->administrator = '0';
$user->email = 'asd';
$user->password = Hash::make('test');
$user->save();
$mentor = new Mentor();
$mentor->user_id = $user->id;
$mentor->save();
$user->userable_id = $mentor->user_id;
$mentor->user()->save($user);
userable_type値がcorret値に設定されている間しかし、Usersテーブルの上に、userable_idは0に設定されています。ここで問題となるのは、save()はそれをあらかじめ定義された0に設定していることです。裏で何が起こっているのでしょうか?
私Laravel 5.4テストインストールで魔法のように動作しますか? –
最新のもの、5.4 – kjanko