2016-03-21 12 views
0

MongoDBで動的クエリを作成する方法を示す回答が見つかりました。今度は、日付にフィルタを追加する必要があります。mongoDB動的クエリの日付フィルタ

私はこのコードを書いたが、それは動作しません:

query['scadenza'] = { 
    '$lt': new Date(new Date().getTime() + (Session.get('scadenzaTra') * 24 * 60 * 60 * 1000)) 
}; 

私は正しい日付値を取得しますが、私はアリの行が表示されていない割り当て後に警告を置く場合。

どうしたのですか?

+1

どこで失敗するのですか?エラーは何ですか?詳細をお知らせください。私は 'Session.get( 'scadenzaTra')に何か問題があると思います。それがなければ(もちろん' scadenza'フィールドが実際に日付であるからです...) – TomG

+0

割り当て後にアラートを入れると正しい日付値が、私は蟻の行が表示されません。 – Halley73

+0

私は 'new Date()。valueOf()'を意味していて、 'Date.now()'と書くだけでよいはずです。おそらく 'Session.get( 'scadenzaTra')の戻り値に含まれていると思われる*「日数」*を追加して、それに1日のミリ秒数を掛けることが望ましいようです。したがって、有効にするために現在の時刻からのミリ秒が必要です。返されたセッション変数が実際に "否定的"でない限り、この追加は常に "将来の日付"になるため、これがどのような目的のために役立つかはわかりません。 –

答えて

-1
$startDate = Carbon::createFromDate(2016, 9, 22); 
    $endDate = Carbon::createFromDate(2016, 9, 24); 
$users = User::where('created_at','>',$startDate) 
    ->where('created_at','<',$endDate)->get();