LoginSignup
0
0

More than 5 years have passed since last update.

【Concrete5】入れ子になったユーザーグループを戻す方法

Last updated at Posted at 2017-05-12

ユーザーグループの順番を変更しようとして他のグループの配下に移動してしまった場合、
ブウラザ上では戻すことができない(バグか?)
・・・ので、それを戻す方法。

失敗例

[管理者]、[テスト1]、[テスト2]から[管理者]、[テスト2]、[テスト1]の順に変更しようとして失敗
前.png
  

後.png

元に戻す方法

1. DBのGroupsを修正する。

SELECT gID, gName, gPath FROM Groups;

gID gName gPath
1 Guest /Guest
2 Registered Users /Registered Users
3 Administrators /Administrators
7 テスト1 /テスト1
8 テスト2 /テスト1/テスト2

gPathが「/テスト1/テスト2」になっているのでそこを元に戻す
UPDATE Groups SET gPath = '/テスト2' WHERE gID = 8;

2. DBのTreeNodesを修正する。

SELECT treeNodeID, treeNodeParentID, treeNodeDisplayOrder FROM TreeNodes WHERE treeNodeTypeID=1;
※treeNodeTypeID=1でユーザーグループの関連レコードのみを取得する

treeNodeID treeNodeParentID treeNodeDisplayOrder
1 0 0
2 1 0
3 1 1
4 1 2
136 1 3
137 136 0

treeNodeParentID が変わっていないところがないか確認する。
この場合、他のレコードが1なのに対して、1つだけ136があるので、
そこを1に変える。
UPDATE TreeNodes SET treeNodeParentID = 1 WHERE treeNodeID=137;

3. 管理画面からユーザーグループを見て、意図した構成になっていることを確認して完了。

お願い

管理画面上で戻す方法があれば教えてください

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0