0
範囲内の日付を比較する正しい方法は、マイナス演算子を使用し、日付がEctoよりも大きいかどうかを比較することですか?Ectoで日付を比較する正しい方法は何ですか
def has_valid_date_range(query) do
from ct in query,
where: (ct.end_date - from_now(0, "day")) > 0,
where: (ct.end_date - from_now(0, "day")) <= ct.due_notice
end
END_DATEマイナス今日は今日0とEND_DATEのマイナスよりも大きい場合、すべての行を返す必要があり、このクエリの結果は
due_noticeよりも低くなっている。しかし、それは私にエラーを返し
** (Ecto.Query.CompileError) ct.end_date() - from_now(0, "day") is not a valid query expression.
正確にここで計算しようとしているものは何ですか? 'from_now'は私が知る限りEcto DSLの比較演算子でのみ動作します。あなたはおそらく 'datetime_add'を探しています。 – Dogbert
私はドキュメントを読んでいましたが、 'from_now'を' -'関数と比べて見ませんでした。おそらくあなたは正しいでしょう。このクエリを作成する別の方法はありますか? –
ここに「due_notice」のタイプは何ですか?あなたは何を計算しようとしていますか? – Dogbert