プロジェクト

全般

プロフィール

Backport(バックポート) #1580

完了

A community category is sorted not in order of column sort_order of table community_category but in order of ID. (コミュニティカテゴリがテーブルcommunity_categoryのカラムsort_orderではなく、ID順にソートされる)

Masato Nagasawa さんが約14年前に追加. ほぼ14年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2010-08-25
期日:
進捗率:

100%

予定工数:

説明

Overview (現象)

2系から3系へアップデートのアップデート時に以下の操作を行うと、コミュニティカテゴリがテーブルcommunity_categoryのカラムsort_orderではなく、ID順にソートされる

前提
 ・2.12のときに、コミュニティカテゴリのIDとsort_orderの並びが違う状態
 (後から追加し、カテゴリ的には既存のものより上にしたいため)

結果
・そのデータをupgrade する
・OpenPNE3で参照しているテーブルcommunity_categoryのカラムsort_order ではなく、ID順にソートされてプルダウンメニューに表示される

再現バージョン

  • OpenPNE2.12 → 3.4.6

Causes (原因)

community_category テーブルからレコードを取得する際のSQLで、sort_order カラムを order by に指定していない。

Way to fix (修正内容)

community_category を取得する際、随所で以下のようなコードとなっている。

Doctrine::getTable('CommunityCategory')->createQuery()->where('lft > 1');

where句の指定はすべて共通であるため、CommunityCategoryTable に getAllChildrenQuery() を追加して共通化し、
このメソッド内で「order by sort_order」を付加するように修正する。

報告元

http://sns.openpne.jp/diary/24997 から転載

2.12から3.4.6へアップデートした環境で、

前提
 ・2.12のときに、コミュニティカテゴリのIDとsort_orderの並びが違う状態
 (後から追加し、カテゴリ的には既存のものより上にしたいため)

結果
・そのデータをupgrade する
・OpenPNE3で参照しているテーブルcommunity_categoryのカラムsort_order ではなく、ID順にソートされてプルダウンメニューに表示される


関連するチケット 3 (0件未完了3件完了)

関連している OpenPNE 3 - Bug(バグ) #1528: A community category is sorted not in order of column sort_order of table community_category but in order of ID. (コミュニティカテゴリがテーブルcommunity_categoryのカラムsort_orderではなく、ID順にソートされる)Fixed(完了)Masato Nagasawa2010-08-25

操作
関連している OpenPNE 3 - Backport(バックポート) #1581: A community category is sorted not in order of column sort_order of table community_category but in order of ID. (コミュニティカテゴリがテーブルcommunity_categoryのカラムsort_orderではなく、ID順にソートされる)Fixed(完了)Masato Nagasawa2010-08-25

操作
関連している OpenPNE 3 - Bug(バグ) #1783: #1580のカテゴリのソート順の修正が不十分であるInvalid(無効)2010-11-16

操作

他の形式にエクスポート: Atom PDF