SlideShare a Scribd company logo
View Customizeで
ユーザー/プロジェクト
のカスタムフィールドを
利用した
個別カスタマイズ手法
もりのあさ (@forenoonM)
JensMartensson
• 目的と手段
• プロジェクト別のカスタマイズ
• ユーザー別のカスタマイズ
• メリット&デメリット
目次
2
JensMartensson
目的と手段
The Goal
3
JensMartensson
4
目的と手段
個別カスタマイズにはデータ保持が必要なためDBカラム/テーブルの追加が必要。
ViewCustomize(JavaScript)では難しい。プラグインを開発する。
提案手法
個別カスタマイズのデータ保持にユーザー/プロジェクトのカスタムフィールドを利用する。
カスタマイズの調整値をカスタムフィールドに入力しておき、
ViewCutomizeからユーザー/プロジェクトのカスタムフィールドを参照し、
カスタマイズ内容を変化させる。
従来の手法
『ユーザー/プロジェクト管理者自身がカスタマイズを調整でき
る』
JensMartensson
必要環境
5
プロジェクト別カスタマイズ
• redmine-view-customize v2.3.0 以上
• (ViewCustomize.context.project.customfields)
ユーザー別カスタマイズ
• redmine-view-customize v1.2.0 以上
• (ViewCustomize.context.user.customfields)
JensMartensson
6
プロジェクト別の
カスタマイズ
For ViewCustomize Plugin
JensMartensson
プロジェクトのカスタムフィールドを追加
7
JensMartensson
プロジェクトのカスタムフィールド値を入力
8
JensMartensson
ViewCustomizeでのカスタムフィールド値の取得
let cf = ViewCustomize.context.project.customFields
.find(cf => cf.name == "カスタムフィールド「A」の初期値");
if(typeof cf != 'undefined'){
cf.value;
}
プロジェクトのカスタムフィールド参照例
9
JensMartensson
10
ユーザー別の
カスタマイズ
For ViewCustomize Plugin
JensMartensson
ユーザーのカスタムフィールドを追加
11
JensMartensson
ユーザーのカスタムフィールド値を入力
12
JensMartensson
ViewCustomizeでのカスタムフィールド値の取得
let cf = ViewCustomize.context.user.customFields
.find(cf => cf.name == "個人壁紙を有効");
if(typeof cf != 'undefined'){
cf.value;
}
ユーザーのカスタムフィールド参照例
13
JensMartensson
14
メリット
&
デメリット
For ViewCustomize Plugin
JensMartensson
メリット
• ユーザー/プロジェクト管理者自身がカスタマイズ内容を変えられる
• システム管理者以外に裁量を委譲できる
• データがカスタムフィールドなので実態としてわかりやすい
デメリット
• 複雑な機能だとカスタムフィールドが膨大になり収集がつかなくなる
• カスタムフィールドは手入力であるためフィールド間のデータ制約が困難
カスタムフィールド利用メリット&デメリット
15
ありがとう
ございました
もりのあさ
@forenoonM

More Related Content

PDF
View customize pluginを使いこなす
PDF
View customize1.2.0の紹介
PDF
ある工場のRedmine画面カスタム【View customize plugin 活用例】
PDF
View Customize Pluginで出来ること
PDF
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
PDF
Redmineをプラグインで拡張しよう
PDF
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...
PDF
View customize plugin for Redmineの紹介 (2019年版)
View customize pluginを使いこなす
View customize1.2.0の紹介
ある工場のRedmine画面カスタム【View customize plugin 活用例】
View Customize Pluginで出来ること
Redmineの画面をあなた好みにカスタマイズ - View customize pluginの紹介 - Redmine Japan 2020
Redmineをプラグインで拡張しよう
ある工場の Redmine 2022 〜ある工場の Redmine 5.0 バージョンアップ〜 ( Redmine of one plant 2022 ...
View customize plugin for Redmineの紹介 (2019年版)

What's hot (20)

PDF
Redmineプラグイン導入・開発入門
PDF
全文検索でRedmineをさらに活用!
PDF
Redmine issue assign notice plugin の紹介
PDF
はじめる! Redmine (2021年版)
PDF
ドメイン駆動設計のための Spring の上手な使い方
PDF
うちのRedmineの使い方
PDF
Redmine にいろいろ埋め込んでみた
PDF
Redmineをちょっと便利に! プログラミング無しで使ってみるREST API
PDF
とあるメーカーのRedmine活用事例
PDF
View CustomizeからREST APIを使用する
PDF
Dockerfileを改善するためのBest Practice 2019年版
PPTX
FINAL FANTASY Record Keeperのマスターデータを支える技術
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
PDF
Redmineの意外と知らない便利機能(Redmine 4.2対応版)
PDF
ドメイン駆動設計サンプルコードの徹底解説
PDF
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
PDF
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
PDF
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
PPTX
開発環境の認証を改善して Redmineを社内標準にした話
PDF
ドメイン駆動設計に15年取り組んでわかったこと
Redmineプラグイン導入・開発入門
全文検索でRedmineをさらに活用!
Redmine issue assign notice plugin の紹介
はじめる! Redmine (2021年版)
ドメイン駆動設計のための Spring の上手な使い方
うちのRedmineの使い方
Redmine にいろいろ埋め込んでみた
Redmineをちょっと便利に! プログラミング無しで使ってみるREST API
とあるメーカーのRedmine活用事例
View CustomizeからREST APIを使用する
Dockerfileを改善するためのBest Practice 2019年版
FINAL FANTASY Record Keeperのマスターデータを支える技術
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Redmineの意外と知らない便利機能(Redmine 4.2対応版)
ドメイン駆動設計サンプルコードの徹底解説
新たなgitのブランチモデル「Git Feature Flow」!Git Flow,Git Hub Flow,Git Lab Flowを超えれるか?
Redmine 4.2で作るヘルプデスク向け問い合わせ受付・管理システム
「実践ドメイン駆動設計」 から理解するDDD (2018年11月)
開発環境の認証を改善して Redmineを社内標準にした話
ドメイン駆動設計に15年取り組んでわかったこと
Ad

View customizeでユーザー/プロジェクトのカスタムフィールドを利用した個別カスタマイズの方法

Editor's Notes

  • #5: あとで実際に紹介する内容を例とすると、 チケットのカスタムフィールドの初期値を設定するVCスクリプト……の値をプロジェクト別に変える。 Redmineの全画面に透かし壁紙を挿入するVCスクリプト……の壁紙URLと壁紙機能自体の有効無効をユーザー別に変える。
  • #7: まず簡単に概要を説明してから、Redmineで実際にお見せします