W mojej aplikacji utworzyłem ostatnio funkcję wiadomości.Relacje 4 Relacja # wszystkie wycofanie
@recentposts = Post.all(:order => 'created_at DESC', :limit => 5)
Ta zmienna sprawia pewne kłopoty. Kiedy uruchomić testy mam następujący błąd:
DEPRECATION WARNING: Relation#all is deprecated. If you want to eager-load a relation, you can call #load (e.g.
Post.where(published: true).load
). If you want to get an array of records from a relation, you can call #to_a (e.g.Post.where(published: true).to_a
). (called from show at /home/mateusz/rails4/Bloggers/app/controllers/users_controller.rb:18)
byłem seraching rozwiązanie w Google, ale nie go znaleźć ...
Podczas gdy ja jestem w leniwym załadunku, on był z prośbą o równoważną linię. Jeśli migruje kod, prawdopodobnie chce trzymać wszystko jak najbliżej tego, co było słuszne? – bluehallu
Staram się myśleć o krok do przodu. Tak, jeśli identyczne jest to, co chce OP. Zanim nie było alternatywy, osobiście uważam, że lepiej załadować dane tylko wtedy, gdy są potrzebne. Na przykład. w ten sposób możesz jeszcze zawęzić wyniki i dodać zakresy, gdy zajdzie taka potrzeba. Może to spowodować bardzo czysty kod. – nathanvda
Tak, już powiedziałem, że jestem zajęty leniwym ładowaniem, ale znowu, jeśli on próbuje migrować aplikację, utrzymanie wszystkiego tak blisko, jak to było, jest prawdopodobnie najlepszym pomysłem, chyba że wie wystarczająco dużo o aplikacji, aby to zmienić. – bluehallu