English 中文(简体)
卡米纳里和顺序
原标题:kaminari and order_by

因此,我把网站的所有成员都列出来,并按名称分组,以便更好地组织名单。 在我看来,我的所有成员都按照他们成员姓名的第一个字母分组,例如:

B

Bakedfish
Beercan Dan
Bigmike33x 

C

Cynicalassassin
ect..

不管怎么说,我也想将这个列表排成一个页数, 但我不能将Kaminari的页数参数加到我的控制器中, 如果我使用顺序是因为我的方法错误未定义。

因此,这行不通:

@members = Member.all.group_by{|u| u.fullname[0].titleize}.page(params[:page]).per(18)

我的看法是这样的:

<div class="content">
  <%= paginate @members %>
</div>
    <% @members.keys.sort.each do |starting_letter| %>
            <h3>
            <%= link_to starting_letter, {:action => :browse, :controller =>:members, :letter => starting_letter } %>
</h3>
      <ol>
                <% @members[starting_letter].each do |member| %>
                    <li>
                        <% if member.is_artist? %>
                            <%= link_to member.full_name, member_path(member), :class=>"artist" %>
                        <% else %>
                            <%= link_to member.full_name, member_path(member) %>
                        <% end %>
                    </li>
                <% end %>
        </ol>
    <% end %>

以下是我的错误消息 :

NoMethodError (undefined method `page  for #<Hash:0x007f78d4bf48f8>):
  app/controllers/members_controller.rb:10:in `index 
最佳回答

Kaminari 将 page 方法添加到 ActiveRecord: member.all.group_by 返回散列。 这就是为什么你得到了这个例外 。

(d) 我建议在页数过后进行分组,例如:

@members = Member.order(:full_name).page(params[:page]).per(18).to_a.group_by { |u| u.fullname[0].upcase }

<强> UPDATE

要使用 paginate 帮助器, 您可以指定两个变量, 例如 :

@paginated_members = Member.order(:full_name).page(params[:page]).per(18)
@members = @paginated_members.to_a.group_by { |u| u.fullname[0].upcase }

通过 pagited_ member paginate 助手 。

问题回答

暂无回答




相关问题
rails collection_select vs. select

collection_select and select Rails helpers: Which one should I use? I can t see a difference in both ways. Both helpers take a collection and generates options tags inside a select tag. Is there a ...

SSL slowness in EC2

We ve deployed our rails app to EC2. In our setup, we have two proxies on small instances behind round-robin DNS. These run nginx load balancers for a dynamically growing and shrinking farm of web ...

Auth-code with A-Za-z0-9 to use in an URL parameter

As part of a web application I need an auth-code to pass as a URL parameter. I am currently using (in Rails) : Digest::SHA1.hexdigest((object_id + rand(255)).to_s) Which provides long strings like : ...

RubyCAS-Client question: Rails

I ve installed RubyCAS-Client version 2.1.0 as a plugin within a rails app. It s working, but I d like to remove the ?ticket= in the url. Is this possible?

activerecord has_many :through find with one sql call

I have a these 3 models: class User < ActiveRecord::Base has_many :permissions, :dependent => :destroy has_many :roles, :through => :permissions end class Permission < ActiveRecord::...

Ordering a hash to xml: Rails

I m building an xml document from a hash. The xml attributes need to be in order. How can this be accomplished? hash.to_xml

Text Editor for Ruby-on-Rails

guys which text editor is good for Rubyonrails? i m using Windows and i was using E-Texteditor but its not free n its expired now can anyone plese tell me any free texteditor? n which one is best an ...

How to get SQL queries for each user where env is production

I’m developing an application dedicated to generate statistical reports, I would like that user after saving their stat report they save sql queries too. To do that I wrote the following module: ...