[前][次][番号順一覧][スレッド一覧]

rails:3268

From: naopontan <naopontan@g...>
Date: Thu, 15 Oct 2009 12:49:56 +0900
Subject: [rails:3268] Re: 一覧表項目名をクリックしてソート

naopontan です。

参考にした redmine のバージョンは 0.8.4 です。ご自分で入手して下さい。
ライセンス面は自己責任でお願いします。

◆sort_helper.rb の diff
↓↓↓↓↓↓↓↓↓↓
@@ -149,7 +149,9 @@
  def sort_header_tag(column, options = {})
    caption = options.delete(:caption) || titleize(Inflector::humanize(column))
    default_order = options.delete(:default_order) || 'asc'
-    options[:title]= l(:label_sort_by, "\"#{caption}\"") unless options[:title]
+# 以下の l メソッドは GLoc プラグインが無いとダメみたい。
+#    options[:title]= l(:label_sort_by, "\"#{caption}\"") unless
options[:title]
+    options[:title] = column  # とりあえず column と同じ仕様にする
    content_tag('th', sort_link(column, caption, default_order), options)
  end
↑↑↑↑↑↑↑↑↑

以下、使用例。
◆コントローラー
 helper :sort
 include SortHelper

 def index
   sort_init 'id'
   sort_update %w(id birthday)

   @user_finder = UserFinder.new(params[:user_finder])
   users = User.all(:order => sort_clause, :conditions =>
@user_finder.conditions)
   @users = users.paginate(:page=>params[:page], :per_page => PAGE)
 end

◆ビュー
<table border="1">
 <tr>
   <%= sort_header_tag 'id', :caption => '会員番号', :nowrap => "nowrap" %>
   <th nowrap="nowrap">氏名</th>
   <th>性別</th>
   <%= sort_header_tag 'birthday', :caption => '生年月日' %>

私もいつも質問ばかりなので、少しでもお役にたてればうれしいです。
以上。

2009年10月15日4:48 しん <dezawa@a...>:
- 元のメッセージを隠す -
> 出沢です
>
> naopontanさん、すばらしい。
>
>> 1. 以下の3ファイルを自分のアプリにコピー
>>     - app/helper/sort_helper.rb
>>     - public/images/sort_asc.png
>>     - public/images/sort_desc.png
>>
>> 2. sort_helper の sort_header_tag メソッドで l というメソッドが使われているが、
>>     どうやらGLocというプラグインが必要らしい。なのでここをいじる。
>
> どういじったか是非教えてください。
>

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

      3248 2009-10-10 16:42 [moronatural@g...    ] [ANN] Rails勉強会@東京を10/18、上野/御徒町の永和システムマネジメントにて開催します
      3251 2009-10-13 03:31 ┗[dezawa@a...         ] 一覧表項目名をクリックしてソート      
      3252 2009-10-13 03:40  ┣[sakaki@t...         ]                                     
      3253 2009-10-13 10:02  ┃┗[dezawa@a...         ]                                   
      3254 2009-10-13 10:41  ┃ ┗[sakaki@t...         ]                                 
      3255 2009-10-13 14:07  ┃  ┗[dezawa@a...         ]                               
      3256 2009-10-13 16:42  ┗[flyman@k...         ]                                     
      3257 2009-10-13 18:32   ┣[sakuro@2...         ]                                   
      3259 2009-10-14 03:43   ┃┗[flyman@k...         ]                                 
      3258 2009-10-14 02:39   ┗[dezawa@a...         ]                                   
      3260 2009-10-14 04:03    ┗[flyman@k...         ]                                 
      3261 2009-10-14 04:36     ┗[dezawa@a...         ]                               
      3262 2009-10-14 05:59      ┗[naopontan@g...      ]                             
      3264 2009-10-14 21:48       ┗[dezawa@a...         ]                           
->    3268 2009-10-15 05:49        ┗[naopontan@g...      ]                         
      3270 2009-10-16 03:25         ┣[dezawa@a...         ]                       
      3272 2009-10-26 06:23         ┗[dezawa@a...         ]