2012-04-17 54 views
3

爲railstutorial編寫sample_app並出現下一個錯誤。will_paginate NoMethodError

我已經添加<%= will_paginate @microposts %>用戶配置文件查看和@microposts = @user.microposts.paginate(:page => params[:page])UsersController

> NoMethodError (protected method `wp_parse_options' called for #<Class:0x007fde66015a80>): 
    app/controllers/users_controller.rb:17:in `show' 

問題出在哪裏?

+0

''users_controller.rb'的第17行輸出是? – Jonathan 2012-04-17 13:53:47

+0

@microposts = @ user.microposts.paginate(:page => params [:page]) – earsonheart 2012-04-17 13:54:49

+0

1.哪個動作是用於分頁的? 2.您如何在'Gemfile'中聲明* will_paginate *的gem? 3.是否爲用戶has_many:microposts和microposts belongs_to:user設置了關聯? 4.你使用的是什麼版本的Rails? – Jonathan 2012-04-17 13:58:51

回答

4

嘗試gem 'will_paginate', '~> 3.0'並重新安裝捆綁包,重新啓動服務器。給分頁添加一些額外的參數paginate(page: params[:page], per_page: 15)

+1

請解釋清楚,問題是因爲他使用* prerelease *版本的寶石,而不是完整版本。 – 2012-04-17 14:47:10

+0

不能讓自己更好 – Jonathan 2012-04-17 14:48:15

+0

謝謝,它的工作原理。我只是複製粘貼這個寶石版本作爲新手) – earsonheart 2012-04-17 15:00:47