Я пытаюсь извлечь последние пользовательские тренировки, и я не знаю, почему я не могу этого сделать. Я думаю, что у меня все хорошо. Пожалуйста, проверьте это. , где метод не работает должным образом на laravel?
ответ
Вы вызываете метод where()
в Eloquent Collection, а не запрос отношения.
Метод where()
в коллекции работает иначе, чем метод where()
по запросу. Для коллекции второй аргумент - это значение для сравнения, и функция может выполнять только сравнительное сравнение. Третий параметр является логическим, чтобы определить, является ли он строгим равным (===) или нет (==).
Чтобы сделать то, что вы ищете, вам нужно позвонить where()
по запросу отношений (и get()
результаты после):
// note $user->workouts() is the relationship query
$workouts = $user->workouts()->where('created_at', '>=', Carbon\Carbon::now()->subMonth())->get();
Клянусь, я сделал это раньше, но без каких-либо результатов. Возможно, я забыл метод get() 'в конце. Я ценю ваше объяснение. Огромное спасибо. – suarsenegger
- 1. Laravel, где статья не работает должным образом
- 2. Laravel содержит метод не работает должным образом
- 3. метод не работает должным образом
- 4. Путь изображений Laravel не работает должным образом
- 5. Laravel или WhereHas не работает должным образом
- 6. Laravel: проверка формы не работает должным образом
- 7. Laravel 5 logout не работает должным образом
- 8. Laravel 5: Middleware не работает должным образом
- 9. PHP Laravel auth не работает должным образом
- 10. Вход в Laravel не работает должным образом
- 11. MongoDb метод обновления не работает должным образом
- 12. Laravel paginator не работает должным образом
- 13. Laravel 5 где метод не работает
- 14. custom equals() метод не работает должным образом
- 15. Laravel 5 ссылка не работает должным образом
- 16. laravel url не работает должным образом
- 17. Префикс маршрута Laravel не работает должным образом
- 18. Laravel 5.2 маршруты не работает должным образом
- 19. laravel firstOrCreate не работает должным образом?
- 20. Аутентификация Laravel не работает должным образом
- 21. значение среды Laravel не работает должным образом
- 22. MongoDB $, где не работает должным образом
- 23. , где использование дат не работает должным образом.
- 24. shouldAutoRotate метод не работает должным образом ..?
- 25. Метод javascript не работает должным образом
- 26. Метод отображения не работает должным образом
- 27. Метод gsub не работает должным образом
- 28. UITextView selectВсе метод не работает должным образом
- 29. Метод ExecuteScalar() не работает должным образом
- 30. Метод propel paginate() не работает должным образом
Как я вижу, вы используете MongoDB, Php время и Монго Время отличается. Можете ли вы попытаться использовать MongoDate http://php.net/manual/en/class.mongodate.php вместо Carbon. –
MongoDB? Нет, я не использую его. Экран был захвачен во время тестирования на tinker (php artisan tinker) – suarsenegger
Я предполагаю, что у вас есть отношения под названием «тренировки». Это дает вам то, что вам нужно: '$ user-> workouts() -> где ('created_at', '> =', Carbon \ Carbon :: now() -> subMonth()) -> get();' ? (обратите внимание: 'workouts()' vs 'workouts') – patricus