Chcę móc wyświetlać posty i sortować je według kilku kryteriów, najpierw pod względem liczby głosów, które mają na nich, a następnie według daty, w której zostały utworzone. Nie chcę, aby były wyświetlane posty, które mają więcej niż tydzień, czyli tylko posty z zeszłego tygodnia. Próbowałem w ten sposób:pokaż tylko posty utworzone w zeszłym tygodniu
<%= render @posts.sort_by { |post| post.votes.count if post.created_at < 1.week.ago.utc }.reverse %>
ale dał mi błąd porównywania NilClass z 2 zawiodły
wiem, że kod działa tylko przez sortujących postach liczenia głosów, ale także chcą ograniczyć czas więc może ktoś mi powie, jak można to zrobić. Wciąż jestem nowy, przepraszam za prostotę.
Myślę, że stan wyświetlania postów nie starszych niż tydzień powinien być, jeśli post.created_at> 1.week.ago.utc. a błąd nilClass może być, ponieważ niektóre rzeczy, do których próbujesz uzyskać dostęp w zapytaniu, nie ma w bazie danych –