モデルのインスタンスがすでに作成されているかどうかを確認する方法はありますか?モデルのインスタンスが今日作成されたかどうかを確認しますか?
モデルの1つのインスタンスのみを毎日作成する必要があるので、新しいインスタンスが作成されると、その日作成済みのインスタンスはすべて削除されます。
モデルのインスタンスがすでに作成されているかどうかを確認する方法はありますか?モデルのインスタンスが今日作成されたかどうかを確認しますか?
モデルの1つのインスタンスのみを毎日作成する必要があるので、新しいインスタンスが作成されると、その日作成済みのインスタンスはすべて削除されます。
直接のみ、今日のレコードを取得するには、DBへのクエリ:
Model.where(created_at: Time.now.beginning_of_day..Time.now.end_of_day)
あなたはまた、Rubyの終わりにそれを処理することができます(あなたが実際にしたいが、推奨されていない場合):
Model.all.select{|m| m.created_at.today?}
最初に作成されたインスタンスが存在するかどうかを確認する必要があります。存在する場合はすべて破棄してください。その後、新しいインスタンスを作成することができます。
def destroy_todays
Model.where(created_at: Time.zone.now.beginning_of_day..Time.zone.now.end_of_day).destroy_all
end
def create_todays(attrs)
destroy_todays
Model.create(attrs)
end
だから、あなたが今日のインスタンスを作成したい任意の時間は、あなたが最初に今日作成された任意の他のインスタンスを破壊している保証します。