context.Redirect
概要¶
サーバスクリプトでブラウザにページ遷移を実行させます。
制限事項¶
- 「画面表示の前」の条件のみ使用できます。
構文¶
パラメータ¶
| パラメータ | 型 | 必須 | 概要 |
|---|---|---|---|
| url | string | ○ | URL |
戻り値¶
戻り値はありません。
使用例¶
下記の例のサーバスクリプトが実行されるとブラウザが指定のページに遷移します。
JavaScript¶
サンプルコード¶
Note
コード内の【 ... 】は適宜修正してください。
1. 作り直した旧テーブルを開いた人を、新しいテーブルへ移す
年度替わりなどで申請のテーブルを作り直したあと、旧テーブルを開いた人を、新しいテーブルの一覧へ移します。過去の申請を調べる担当のグループのメンバーは、旧テーブルをそのまま開けます。
実務での使いどころ¶
古いブックマークや、メール・Wikiに残ったリンクから旧テーブルを開き、そのまま入力してしまう事故を防げます。旧テーブルのアクセス権を外すと「権限がありません」が出るのみで、新しいテーブルへは案内されません。テーブルを開いたときに別のURLへ移す設定は、テーブルの管理にはありません。
事前準備¶
1:旧テーブルを開けるままにする人のグループを作成してください。
2:新しいテーブルの一覧を開き、アドレスバーのURLを控えます。
3:旧テーブルにスクリプトを登録します。
3-1:「テーブルの管理 > サーバスクリプト」タブで「新規作成」を選択する。
3-2:タイトル: 任意の名前(例:redirectToNewTable)
3-3:スクリプト: 下記サンプルコードを貼り付け、【 】を2のURLと1のグループのIDにする
3-4:条件: 「画面表示の前」にチェック
JavaScript¶
// 移った先の、新しいテーブルの一覧のURL(新しいテーブルを開いて、アドレスバーから写す)
const NEW_TABLE_URL = '【新しいテーブルの一覧のURL】';
// 旧テーブルを開けるままにするグループのID(過去の申請を調べる担当など)
const KEEP_GROUP_ID = 【旧テーブルを開けるグループのID】;
// 旧テーブルの一覧・レコード・新規作成の画面を開いたとき、グループのメンバー以外は
// 新しいテーブルの一覧へ移す(テーブルの管理の画面では動かないため、設定は直せる)
if (!Array.from(context.Groups).includes(KEEP_GROUP_ID)) {
context.Redirect(NEW_TABLE_URL);
}
注記¶
- 一覧・レコードの編集・新規作成・カレンダーなどの画面を開いたときに移ります。テーブルの管理の画面では動かないため、移したあとでもスクリプトを直せます。
- APIでの取得・更新は、このスクリプトの対象外です。
- 旧テーブルのレコードの画面を開いた場合も、新しいテーブルの一覧へ移ります(対応するレコードへは移りません)。
対応バージョン¶
| 対応バージョン | 内容 |
|---|---|
| 1.3.13.0 以降 | 機能追加 |
