【发布时间】:2021-01-21 23:10:45
【问题描述】:
我有使用 laravel livewire 使用 updateOrCreate 的功能,但我有循环数字的功能,它的 make update 有错误的值。那么如何知道这个输入是更新还是创建呢?以及如何使用 if else 来操纵它?比如如果它的 create .... ,或者 elseif update ....
这是我的功能
public function store_uraian()
{
$data = $this->anggaran ;
$kode = $this->k_koderek ;
$anggaran = str_replace(".", "", $data);
$first = UraianKegiatan::all()->count();
if ($first < 9) {
$new = sprintf("0%d", $first + 1);
} else {
$new = $first + 1;
}
UraianKegiatan::updateOrCreate(['id' => $this->uraiankegiatanid],[
'uraian_id' => $this->newid,
'kode_rekening' => $kode.'.'.$new, // on here i have problem
'uraian' => $this->uraian ,
'anggaran' => $anggaran ,
]);
$this->hideModal();
$this->emit('alert', ['type' => 'success', 'message' =>'Succes Melakukan Input / Update']);
}
我的问题在线 'kode_rekening' => $kode.'.'.$new, // 在这里我有问题
如果我确实创建了函数,它的正常和工作,但如果更新它的值是错误的。如何检测这是正在创建还是正在更新行?以及如何使条件像
if (create) {
'kode_rekening' => $kode.'.'.$new,
} else {
'kode_rekening' => $this->kode_rekening;
}
【问题讨论】:
标签: laravel eloquent laravel-livewire