![](/img/trans.png)
[英]Update record if column is not null else create new record in laravel
[英]How do I update a record create in the same day or create a new record if its a new day? (Laravel 5.2)
因此,在laravel中,如果我有今天創建的記錄,則可以在更新記錄時調用更新或保存。 真棒。
但是,如果明天呢? 我怎么說,昨天還是嗎? 沒有? 確定,讓我們創建一個新記錄。 例如:
id: 1,
post_id: 1
viewed_times: 3
create_at: today
因此,從今天開始,我可以對其進行更新。 但是現在讓我們假設它的明天(12:00 AM之后)。
現在,從明天開始,而不是更新記錄,我想創建一條新記錄,說:
id: 2,
post_id: 1
viewed_times: 2
create_at: tomorrow
現在,您可以看到我們有一條具有相同帖子ID的新記錄,並且新的一天(明天)的視圖設置為2。
最好的表達方式是 :今天還是明天? 如果是今天,則更新現有記錄;如果是明天,則創建新記錄。
注意 :如果我可以使用碳,那么簡化它會很棒。
您將檢查您的日期是否大於今天。
$date_to_compare = Carbon\Carbon::tomorrow();
if (Carbon\Carbon::now()->gt(Carbon::parse($date_to_compare)) {
// will always fail because date to compare is tomorrow
}
您可以使用
$today = Carbon\\Carbon::today();
然后像這樣獲取您創建的記錄的明天:
$record->create_at->tomorrow();
然后
if($today->eq($record->create_at->tomorrow())){
//it's tomorrow insert new record
}else{
//it's the same day just update the record :)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.