私が取り組んでいるプロジェクトでは、LastEditedフィールドを他のデータと組み合わせて使用して、問題のDataObjectに関する情報を推測する必要があります。LastEditedフィールドは通常の状況ではほとんどの場合正常な値であるため、これはほとんどの場合問題ありません。
ただし、コードを単体テストしようとすると、フィクスチャにLastEditedフィールドを設定しているにもかかわらず、データが一時データベースに読み込まれると、LastEditedフィールドが現在の時刻に設定されるという問題が発生します。
私の現在の仮定(サファイアへの最初の洞窟探検によってある程度裏付けられています)は、DataObject :: write()を呼び出すと、LastEditedが現在の時刻に自動的に設定されるというものです(予想される動作)。
私の質問は、この機能を一時的に無効にする方法があるかどうか、またはこれを行うためにサファイアにパッチを適用する必要があるかどうかです。
更新フィクスチャから最後に編集した値を設定できると便利だと判断し、パッチを適用しました。朗報です。silverstripeの次のリリースになります。