W bazie danych mam rekordy przechowujące prognozy pogody. Chciałbym sprawdzić, czy istnieje rekord prognozujący pogodę na dokładnie dany dzień i godzinę. W bazie danych przechowuję go jako datetime. Próbowałem różnych rzeczy, ale odnoszę wrażenie, że zawsze zwraca false, mimo że taki rekord powinien istnieć. Czy poniższe zapisy rzeczywiście nie mogą zadziałać zgodnie z oczekiwaniem(w logach raczej nic nie ma wydaje mi się, że zapisy są poprawne składniowo). Czy może któraś z linii jest wystarczająca, a problem leży gdzie indziej?
Forecast::where(DB::raw("Date(date) = '".$date."'"))->exists();//to dla date? Przerobione na podstawie znalezionego w necie fragmentu
Forecast::where('date', $date)->exists();
Forecast::whereDate('date', '=', $date)->exists();//to chyba raczej jest do date niż datetime?
EDIT: Rozwiązaniem wydaje się być trzymanie daty jako tekstu, ale zostawiam, bo pewnie jakoś da się to zrobić nie naokoło.