我正在研究Rails项目,我正在使用" wice_grid"宝石创造网格。 当我尝试对结果进行分页时,它会抛出错误:
undefined method `num_pages' for #<User::ActiveRecord_Relation:0x007f43b89a1610>
这是我的代码:
在控制器中
def index
@root_url="http://"+"#{request.env['HTTP_HOST']}";
@users_grid = initialize_grid(User,:per_page => 20, :conditions => ['role= ?', "user"], :order => 'created_at',:order_direction => 'desc')
@count=User.where(:role=>"user").count
@record_per_page=20
@total_record=@count/@record_per_page.ceil
end
在视图中
<div class="widget-content" >
<%= grid(@users_grid,:html=>{:class=>'table table-striped table-bordered',:id=>"tbl1"}) do |g| %>
<% g.column :name => 'FIRST NAME', :attribute => 'first_name',:html=>{:id=>"firstname"} do |user| %>
<% content_tag(:td,:name => 'FIRST NAME', :attribute => 'first_name',onclick:"show(#{user.id});",:style=>"cursor:pointer") do %>
<% user.first_name %>
<% end %>
<% end %>
<% g.column :name => 'LAST NAME', :attribute => 'last_name',:html=>{:id=>"lastname"} do |user| %>
<% content_tag(:td,:name => 'LAST NAME', :attribute => 'last_name',onclick:"show(#{user.id});",:style=>"cursor:pointer") do %>
<% user.last_name %>
<% end %>
<% end %>
<% end %>
</div>
我尽力解决这个问题,但一切都是徒劳的。