Rails z 1.2.3 na 2.1.0

Mój masterplan:

  1. Napisać projekt z Agile Rails 2nd pod Rails 1.2.X
  2. Przenieść projekt na Rails 2.1.0
  3. Pisać swój projekt pod Rails 2.1.0

Aktualnie utknąłem na starcie 2 punktu. Mam zainstalowane 2 wersje Rails, w konfiguracji projektu zmieniłem na 2.1.0.
Miałem problem z nieznaną metodą ‘paginate’.

plik admin_controller.rb

def list #wyrzucilen paginacje, bo nie wiadomo jak to sie robi w rails 2.1.0 #@product_pages, @products = paginate :products, :per_page => 10 @product_pages, @products = Product.find(:all) end
Po zastąpieniu paginacji metodą Product.find(:all) (ktora wydaje mi się tu cholernie poprawna!) dostaje na widoku błąd:

[code]Showing admin/list.rhtml where line #5 raised:
undefined method `each’ for #Product:0x67e08c8

Extracted source (around line #5):
2:

Lista produktów


3:
4:
5: <% for product in @products %>
6: [/code]
  1. Co jest nie tak?
  2. Jak działa paginacja w Rails 2.1.0?

Z góry dzięki za odpowiedź

Problem tkwi tu:

@product_pages, @products = Product.find(:all)

Metoda ta zwraca tablicę rekordów i w tym przypadku(zgodnie z konwencją Ruby) odpowiednio do pierwszej zmiennej przyporządkowuje pierwszy element tablicy i do drugiego następny. W ten sposób zmienna @product będzie obiektem klasy Product, a w najgorszym razie po prostu nil. Zmień na

@products = Product.find(:all)

W Rails 2.1 korzysta się z tego pluginu do paginacji. Tam na wiki jest wszystko opisane jak instalować i korzystać.

Dziękuję bardzo.