Laravel 从外键检索值
Laravel retrieve values from foreign key
我有这些模型及其相关的数据库表,目前我可以检索所有需求
Requirement::all()
但我只有一个外键列表(destination_id、applier_id、doc_id)。我怎样才能直接检索连接到该外键的行?
class Requirement extends Model
{
protected $fillable = [
'required',
'destination_id',
'applier_id',
'doc_id'
];
public function destination()
{
return $this->belongsTo(Destination::class);
}
public function applier()
{
return $this->belongsTo(Applier::class);
}
public function doc()
{
return $this->belongsTo(Doc::class);
}
}
class Doc extends Model
{
protected $fillable = [
'type',
'description',
'note'
];
public function requirements()
{
return $this->hasMany(Requirement::class);
}
}
class Destination extends Model
{
protected $fillable = [
'country',
'passying_country',
'transfer_conditions',
'passing_conditions'
];
public function requirements()
{
return $this->hasMany(Requirement::class);
}
}
您可以调用 with()
函数而不是 all()
。因此,如果您尝试以下操作:
$requirements = Requirement::with('destination', 'applier', 'doc')->get();
创建dd($requirements)
并查看输出。
希望它能奏效。
我有这些模型及其相关的数据库表,目前我可以检索所有需求
Requirement::all()
但我只有一个外键列表(destination_id、applier_id、doc_id)。我怎样才能直接检索连接到该外键的行?
class Requirement extends Model
{
protected $fillable = [
'required',
'destination_id',
'applier_id',
'doc_id'
];
public function destination()
{
return $this->belongsTo(Destination::class);
}
public function applier()
{
return $this->belongsTo(Applier::class);
}
public function doc()
{
return $this->belongsTo(Doc::class);
}
}
class Doc extends Model
{
protected $fillable = [
'type',
'description',
'note'
];
public function requirements()
{
return $this->hasMany(Requirement::class);
}
}
class Destination extends Model
{
protected $fillable = [
'country',
'passying_country',
'transfer_conditions',
'passing_conditions'
];
public function requirements()
{
return $this->hasMany(Requirement::class);
}
}
您可以调用 with()
函数而不是 all()
。因此,如果您尝试以下操作:
$requirements = Requirement::with('destination', 'applier', 'doc')->get();
创建dd($requirements)
并查看输出。
希望它能奏效。