- 履歴一覧
- 現在との差分 を表示
- ソース を表示
- 履歴 を表示
- Redmine/親子関係を崩さずにガントチャートを日付順に表示する へ行く。
- 追加された行はこの色です。
- 削除された行はこの色です。
*キーワード [#a81c779d] -Redmine *関連 [#ccef8095] -[[RDBで階層構造を表現する方法(の考え方)>http://fukuchiharuki.blogspot.jp/2011/10/rdb.html]] -[[RDBで階層構造を表現する方法(の実装)>http://fukuchiharuki.blogspot.jp/2011/10/rdb_15.html]] *概要 [#q0bd5354] Redmineガントチャートのソート順が微妙なので次のようにします。 -親子関係を崩さず -その中で開始日順に並べる *方法 [#p4691ff9] gantt.rbを探して $ find / -name "gantt.rb" 次のようにファイルを書き換えます。 - (環境による)/lib/redmine/helpers/gantt.rb 646| # TODO: top level issues should be sorted by start date 647| def gantt_issue_compare(x, y) 648| if x.root_id == y.root_id 649| if x.start_date == y.start_date 650| x.lft <=> y.lft 651| else 652| x.start_date <=> y.start_date 653| end 654| else 655| x.root_id <=> y.root_id 656| end 657| end *解説 [#z1895fda] 次の順にしています。 + 親ID(昇順) + 開始日(昇順) + 左位置(昇順) 左位置というのは[[入れ子集合モデル>http://fukuchiharuki.blogspot.jp/2011/10/rdb.html]]の[[実装>http://fukuchiharuki.blogspot.jp/2011/10/rdb_15.html]]だと思います。 左位置の昇順だと親が先に来ます。 &color(red){しかしこのままだとある親の子供たちの中で開始日順に並ぶまでで、まだ微妙ですw};最初のソートで親の開始日順になるとよいですが、ぺろっと修正するだけでは無理そうです。 割とばくっとした概念で親子関係を作ってしまうのがとりあえずの対策かなと思います。 割とばくっとした概念(開発やUTなどのフェーズ)で親子関係を作ってしまうのがとりあえずの対策かなと思います。 *参考 [#n6cf11fb] -[[【Redmine 1.1.2】ガントチャートを開始日順にソートする|渋谷ではたらくマー君の技術とかブログ。>http://ameblo.jp/hihihihiroki/entry-10854421155.html]] -[[redmine ガントチャート チケットの開始日順でソートする>http://doruby.kbmj.com/everyday_is_everyday/20120927/redmine____]]