基本
インスタンス生成
もしあなたが、特定のスプレッドシート上に GAS を作成し、そのスプレッドシートを扱うのであれば以下の方法でインスタンス生成が可能です。
const gassma = new Gassma.GassmaClient();
あるいは、スプレッドシートではない場所に GAS を作成した、あるいは別の場所にあるスプレッドシートを扱うのであれば、引数に対象のスプレッドシートの ID を挿入することでインスタンス生成が可能です。
const gassma = new Gassma.GassmaClient("XXXXXXXXXXXXXXXXXXX");
オプションオブジェクトでの初期化
リレーション定義やグローバル omit など、高度な設定を行う場合はオプションオブジェクトを渡します。
const gassma = new Gassma.GassmaClient({
id: "XXXXXXXXXXXXXXXXXXX", // 省略可
relations: {
// リレーション定義(詳細はリレーション定義のリファレンスを参照)
},
omit: {
// グローバル omit 設定(詳細はグローバル omit のリファレンスを参照)
Users: { password: true },
},
});
| オプション | 説明 | 参照 |
|---|---|---|
id | スプレッドシート ID(省略時はアクティブスプレッドシート) | - |
relations | リレーション定義 | リレーション定義 |
omit | グローバル omit 設定 | グローバル omit |
defaults | フィールドのデフォルト値 | defaults |
updatedAt | 自動更新タイムスタンプ | updatedAt |
ignore | フィールドレベルの除外 | ignore |
ignoreSheets | シートレベルの除外 | ignore |
map | フィールド名のマッピング | map |
mapSheets | シート名のマッピング | map |
autoincrement | 自動採番 | autoincrement |
strictUndefinedChecks | クエリ入力の明示的な undefined を実行時エラーにする | strictUndefinedChecks / Gassma.skip |
Date 値の判定
GASsma は GAS ライブラリとして、呼び出し元スクリプトとは別のスクリプトコンテキストで動作します。そのため、GASsma が返した Date 値を instanceof Date で判定すると false になります。判定には Object.prototype.toString を使用してください。
const user = gassma.Users.findFirst({ where: { id: 1 } });
user.createdAt instanceof Date;
// => false(ライブラリ境界を越えた Date は instanceof で判定できない)
Object.prototype.toString.call(user.createdAt) === "[object Date]";
// => true
注記
この制約は Date などのビルトイン型に対する instanceof の話です。GASsma が公開するエラークラス(Gassma.GassmaMissingArgumentError など)は Gassma 名前空間(ライブラリの global)経由で参照するため、instanceof で判定できます。詳しくはエラー一覧を参照してください。