useAutoIncrement; } // 이 훅은 save() 메서드 실행 시 자동으로 호출됩니다. protected function _cleanNullsForDefaults(array $data): array { // $data['data'] 배열에 실제 INSERT/UPDATE 될 데이터가 들어있습니다. if (!isset($data['data']) || !is_array($data['data'])) { return $data; } // 데이터 배열을 순회하며 값이 null인 필드를 제거합니다. foreach ($data['data'] as $key => $value) { // 이 필드가 Primary Key가 아니면서 (PK는 Update 시 필요) // 값이 null이면 DB에 명시하지 않도록 배열에서 제거합니다. if ($key !== $this->primaryKey && $value === null) { unset($data['data'][$key]); } } return $data; } }