2017-03-14 13 views
1

私は自分のデータベースにユーザが作成された場合、ユーザは支払いを行わなければならないというコードを書いておきます。ユーザーが支払いを行わない場合、ユーザーはブロックされる必要があります。私は、デフォルトで0に設定されているブロックされている列がありますが、ユーザーがブロックされている場合は1に設定されます。アカウントの作成時にcreated_at列はCarbon :: now()に設定されますが、 24時間で私はユーザーをブロックしたい(すなわち、ブロックされた列を= 1に設定する)。助けてください炭素ラベリングデータベースでcreated_atより大きいかどうかをチェックする方法

答えて

1

whereColumn

whereColumn方法かもしれません2つの列が等しいことを確認するために使用してください。

use Carbon\Carbon; 

->whereColumn('created_at','<=', Carbon::today()) 
4

Carbonメソッドを使用して、ユーザーが24時間以上前に作成されたかどうかを確認してください。クエリにこの句を追加します。

->where('created_at', '<', Carbon::now()->subDay()) 

は、クエリを実行するクラスの先頭へuse句を追加することを忘れないでください:

use Carbon\Carbon; 
+0

大丈夫、 - > subDay(1)は1日を減算することを意味しますか? –

+0

はい。しかし、パラメータなしでそれを使用してください。代わりに、 'subHours(24)'や 'subDays(1)' –

+0

を使うことができます。ここで、laravel app..iをホストする方法についてのチュートリアルを入手できます。 –

関連する問題