多くの予約がある項目の日付範囲の日付のフラットな配列を取得したいと考えています。予約は:start_date
と:end_date
です。Ruby on Rails:開始日と終了日の範囲を使用して、日付のフラットな配列を作成します。
Booking A: 10/1/17 to 10/3/17
Booking B: 11/2/17 to 11/4/17
私はPluckの使用してみました:
の例では、アイテムは、これらの予約を持っています。 Item.bookings.pluck[:start_date, :end_date]
、それは私が必要なもの私にこの[["10,01,17", "10,03,17"], ["11,02,17" , "11,04,17" ]]
のように見える配列を与えるには、まあ、範囲を得るために、あなたが実際のDateオブジェクトを必要とするこの["10,01,17", "10/02/17", "10,03,17", "11,02,17" , "11,03,17", "11/04/17"]
をあなたは間の日付を持っている必要がありますあなたの配列の日付Xと日付Y? –
(Date.today..Date.today + 10.days).to_a – eezee
私のコントローラでは、クエリを書いてインスタンス変数に渡したいと思います。私はItem.bookings.pluck(:start_date、:end_date)を問い合わせることができ、それは私に開始日と終了日の配列を与えるでしょう。私はまず、各配列の開始日と終了日を含む範囲を取得してから配列を平坦化して、すべての日付が例のように1つの配列になるようにする必要があります。ありがとうございました! –