操作
QA #896
未完了プロジェクトのメンバー定義を一括してコピーしたい
開始日:
2018/12/03
期日:
進捗率:
0%
予定工数:
説明
■現象/要望¶
プロジェクトのメンバー定義を一括してコピーしたい。
(PJ自体のコピーでは無く、メンバー定義内容のみをコピー)
プロジェクト間のメンバー継承機能は利用しないものとする。
■解決策¶
RAILSコンソールにより可能
"src_pj" のメンバー定義内容を、"dst_pj" にコピーする場合
Redmineのコンソール上で
bundle exec rails console production
pj_src=Project.find_by_name("src_pj")
pj_dst=Project.find_by_name("dst_pj")
/* members と queriesをコピーする場合*/
pj_src.copy(pj_dst, :only => ['members', 'versions'])
詳細は app/models/project.rb 参照
Projectの下記要素に対して同様に実行可能
wiki,versions,categories,issues,members,queries
■対応状況¶
RAILS Console上の操作で可能
adminの作業負荷を減らしましょう。。
■補足¶
サブプロジェクトで継承できる機能(versions,members)の対応については確認必要と思われる。
pj_dst.copy_members(pj_src) でも可能だったが、
copy_membersのスコープが privateになっているので、そのままではclass外から呼び出せない。
copy_membersの前後を public と private で囲む必要がある。
(事前処理が必要な場合もあるので、十分確認した上で)
操作