回答編集履歴
3
修正
answer
CHANGED
|
@@ -10,5 +10,6 @@
|
|
|
10
10
|
もっと言えば`Reservation::get(['reservation_date']);`も。
|
|
11
11
|
カレント年月のカレンダーしか表示させないのでしたら年月で絞ったデータのみを取得するべきです。
|
|
12
12
|
でないとデータが増えれば増えるほど無用なループが回り、パフォーマンスがどんどん悪くなります。
|
|
13
|
+
|
|
13
|
-
月のカレンダーに時間を表示させる
|
|
14
|
+
月のカレンダーに時間を表示させる必要があるかないかも検討が必要ですし、通常は表示させません。「その日のデータがあるかないか(または件数)」のみ分かればいいので、時間まで込みのデータは不要と思います。
|
|
14
15
|
group byで年月日で絞って日付毎のデータ件数だけ取っては。
|
2
修正
answer
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
2回回っているわけではありません。
|
|
2
|
-
$current_reserved_dateに
|
|
2
|
+
$current_reserved_dateにデータが2本あってどの日でもその分だけ回しているだけです。
|
|
3
|
-
日でしか比較していないため全てelseに入りますね。
|
|
3
|
+
そして日でしか比較していないため10日以外は全てelseに入りますね。今の作りだと年月関係なく。
|
|
4
4
|
|
|
5
5
|
つまり今の作りだとデータが増えれば増えるほどデータの件数だけ「空室」と表示されることになります。
|
|
6
6
|
$current_reserved_dateのkeyを0から連番ではなく年月日にしておき、そのキーとカレンダーループの年月日全てで比較したほうが良いでしょう。
|
|
7
7
|
|
|
8
8
|
なので、$reservations_arrayから$current_reserved_dateを作るロジックから見なおす必要があります。
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
もっと言えば`Reservation::get(['reservation_date']);`も。
|
|
11
|
+
カレント年月のカレンダーしか表示させないのでしたら年月で絞ったデータのみを取得するべきです。
|
|
12
|
+
でないとデータが増えれば増えるほど無用なループが回り、パフォーマンスがどんどん悪くなります。
|
|
13
|
+
月のカレンダーに時間を表示させるのであれば、「その日のデータがあるかないか(または件数)」のみ分かればいいので、時間まで込みのデータは不要と思います。
|
|
11
|
-
|
|
14
|
+
group byで年月日で絞って日付毎のデータ件数だけ取っては。
|
1
修正
answer
CHANGED
|
File without changes
|