以下一直困扰着我。
更新
我首先发布了一个不打算发布的代码。我更新了代码。请看一下。
一张名为 plate
的表格 $table->increments('id');
$table->integer('equipment_status_code_id')->unsigned();
$table->foreign('equipment_status_code_id')->references('id')->on('equipment_status_codes')->onDelete('cascade')->onUpdate('cascade');
模型牌照
public function equipmentStatusCode()
{
return $this->belongsTo('App\Models\EquipmentStatusCode');
}
和 EquipmentStatusCode
public function plate()
{
return $this->hasOne('App\Models\Plate');
}
在路线中我这样做
$data = Plate::find(1);
$att = $data->equipmentStatusCode;
dd($att);
工作得很好。
但是反过来又没有工作并返回 null
$data = EquipmentStatusCode::find(1);
$att = $data->plate;
dd($att);
有人告诉我发生了什么事吗?
答案 0 :(得分:1)
BelongsTo
关系的模型应该有foreign key in its table。你反过来了。所以只需交换关系。
板块模型:
public function equipmentStatusCode()
{
return $this->hasOne('App\Models\EquipmentStatusCode');
}
EquipmentStatusCode型号:
public function plate()
{
return $this->belongsTo('App\Models\Plate');
}