Skip to content

フィールド型 ​

Field Type はデータベース保存値、Yukari のアプリケーション値、等価比較、JSON 出力を相互に変換します。

組み込み型 ​

型Yukari の値一般的な MySQL 保存先
Type.StringstringCHAR、VARCHAR、TEXT
Type.BooleanbooleanTINYINT
Type.Integernumber整数型
Type.FloatnumberDECIMAL、FLOAT、DOUBLE
Type.JsonJSON 値テキストまたは JSON 列
Type.DatetimeDateDATETIME

allowNull: true は推論型に null を追加します。

カスタム型 ​

typescript
interface IndustryValue {
  big: string;
  small: string;
}

const Industry = {
  name: 'Industry',
  needQuotes: true,
  parse(value: string): IndustryValue {
    const [big = '', small = ''] = value.split(',');
    return { big, small };
  },
  restore(value: IndustryValue): string {
    return `${value.big},${value.small}`;
  },
} satisfies FieldType<IndustryValue, string>;

parse() は保存値をアプリケーション値に、restore() は逆方向に変換します。アプリケーション型は build()、検索条件、Yukari、行型へ伝播します。

任意メンバーは defaultValue、equal()、toJSON()、name、needQuotes です。JSON 型が異なる場合は 3 番目の FieldType 型引数を使用します。

Released under the MIT License.