モデルごとの動作

バージョン管理、公開、バリアントはモデルごとの3つのスイッチで、いずれも最初はオフです。モデルのレコードに必要なものだけをオンにします。

モデルごとの3つのフラグ

各モデルは、バージョン管理、公開、バリアントの3つの真偽値フラグを持ちます。モデルの作成や編集の際にコンソールで設定するか、コードとしての設定として、foir.config.tsのモデルのconfigの下に記述します。前提となるフラグはコンソールが自動でオンにするため、公開をオンにするとバージョン管理も、バリアントをオンにすると両方もオンになります。

どれもオンにしないモデル

3つすべてがオフの場合、レコードは直接読み書きされます。更新はデータをその場で置き換え、すぐに反映されます。フォームの送信、予約、アプリケーション設定、フィーチャーフラグ、カウンターに向いています。

各フラグが加えるもの

3つのうちどれか1つでもオンにすると、モデルはバージョン管理されます。以後、保存のたびにバージョンが書き込まれ、モデルにバージョン履歴とrevertミューテーションが備わります。公開またはバリアントをオンにすると、公開、非公開、スケジュールのミューテーションも加わります。これらは下書きと予約公開を支えるものです。公開のmodelsクエリは、各モデルでオンになっているものをそれぞれのcapabilitiesフィールドで報告します。

フラグを後から変更する

フラグをオンにすると、モデルの既存のレコードが移行されます。すでにレコードがあるモデルで、最後の1つをオフにすることは拒否されます。フラグの変更はモデルの下書きの一部で、本番にはリリースで反映されます。リリースでは、オフにする変更は破壊的変更、オンにする変更は要レビューとして示されます。

詳細を読む

モデルのガイドで、各機能フラグ、その前提条件、フラグを変更したときに既存のレコードがどうなるかを説明しています。