Laravel 将数据插入一对一关系 table

Laravel insert data to one to one relation table

如何将数据(相互链接)插入到 table 'PEMBATALAN' 与另一个 table 'PEMBATALAN' 具有一对一关系(在两个 table 中都有外键)table 'PERMINTAAN'.

这里是'pembatalan'模型代码:

class Pembatalan extends Model
{
    public $table = "PEMBATALAN";
    public $primaryKey = "ID_PEMBATALAN";
    public $fillable = array(
        'PERMINTAAN_ID',
        'ALASAN_PEMBATALAN',
        'TGL_PEMBATALAN',
        'FILE_PEMBATALAN',
        'STATUS_PEMBATALAN',
    );
    public function permintaan() {
        return $this->belongsTo('Permintaan', 'PERMINTAAN_ID', 'ID_PERMINTAAN');
    }
}

'Permintaan'型号代码:

class Permintaan extends Model
{

    public $table = "PERMINTAAN";
    public $fillable = array(
        'NOMOR_TICKET',
        'TGL_PERMINTAAN',
        'NAMA_REQUESTER',
        'PEMBATALAN_ID',
    );
    public $primaryKey = "ID_PERMINTAAN";

    public function tikpro() {
        return $this->belongsToMany('Tikpro','TIKPRO_ID','ID_TIKPRO');
    }
    public function pembatalan() {
        return $this->hasOne('Pembatalan','PEMBATALAN_ID','ID_PEMBATALAN');
    }
}

提前致谢

创建您的 Permintaan,然后使用该引用创建关系

只有 Pembatalan 需要 Permintaan 的外键,反之亦然。

$p = Permintaan::create([
     'NOMOR_TICKET' =>$value,
     'TGL_PERMINTAAN' =>$value,
     'NAMA_REQUESTER' =>$value,
 ]);

$p->pembatalan()->create([
    'ALASAN_PEMBATALAN' =>$value,
    'TGL_PEMBATALAN' =>$value,
    'FILE_PEMBATALAN' =>$value,
    'STATUS_PEMBATALAN' =>$value,
 ]);

Laravel 文档对使用 hasOne 的一对一关系有很好的解释,属于