1
我有三個表,其中有許多對多種關係 表名:notes(id,user_id,card_id,body),用戶(id,name,password,.. 。),卡(ID,cardname,cardText) 現在我想用預先加載,以獲得相關的用戶名 我有這樣表示此處爲三個型號:渴望加載返回null對一對多關係
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Card extends Model
{
/*public $table= 'Fake';*/
public $timestamps = false;
public function notes()
{
return $this->hasMany(Note::class);
}
}
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Note extends Model
{
public $timestamps = false;
public function cards()
{
return $this->belongsTo(Card::class);
}
public function users()
{
return $this->belongsTo(User::class);
}
}
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class User extends Model
{
public $timestamps = false;
public function notes()
{
return $this->hasMany(Note::class);
}
}
,並在我的路線,我用以下內容:
<?php
use App\Card;
Route::get('/', function() {
$card=new Card();
$card->id=1;
$card->load('notes.users')->all();
return $card;
});
但我不知道爲什麼我得到nu LL在用戶JSON: JSON文件:
{
id: 1,
notes: [
{
id: 1,
card_id: 1,
user_id: 1,
body: "Hussein Jafari",
users: null
},
{
id: 2,
card_id: 1,
user_id: 1,
body: "Ammpeaa",
users: null
},
{
id: 12,
card_id: 1,
user_id: 1,
body: "KAIRIMI SANJABI",
users: null
},
{
id: 13,
card_id: 1,
user_id: 1,
body: "MOAHAHS KASK KSK",
users: null
},
{
id: 14,
card_id: 1,
user_id: 1,
body: "bENAJAJ KSAK KS",
users: null
}
]
}
感謝重播,我做到了,但我仍然像上面的json一樣獲得用戶爲null。沒有什麼不同 – Sandro
然後確保在你的數據庫中有'id' 1的用戶。 –
db中的用戶標識是1,2,3,並且它們全都在筆記表中有記錄,但是爲什麼你說有id的用戶我們沒有提到用戶在我們的查詢中我們只是想要用戶哪個註冊卡的id爲1,相關說明 – Sandro