GORM の削除関数でのエラーの処理
GORM を使用してデータベースの削除を行う場合、存在しないデータベースをどのように処理するかを検討することが重要です。行。デフォルトでは、GORM は存在しない行を削除しようとしてもエラーをスローしません。代わりに、result.Error フィールドは nil のままです。
この動作を変更し、存在しない行に対してエラーを返すには、RowsAffected フィールドを検査する必要があります。 DeleteCategory 関数を変更する方法は次のとおりです:
<code class="go">func DeleteCategory(id uint) error { c := Category{ID: id} db := db.Delete(&c) if db.Error != nil { return db.Error } else if db.RowsAffected < 1 { return fmt.Errorf("row with id=%d cannot be deleted because it doesn't exist", id) } return nil }</code>
この変更された関数では:
以上がGORM の削除関数で存在しない行を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。