Go での構造体の検証
構造体の値の妥当性を検証することは、ソフトウェア開発において重要なタスクです。多数の小さな構造体を扱う場合、各フィールドを個別にチェックするのは面倒な場合があります。構造体を検証するための慣用的なアプローチと代替ソリューションを見てみましょう。
慣用的な検証
ここで提供されている例は、構造体を検証するための一般的なアプローチです。各フィールドは、構造体のメソッドを使用して個別にチェックされます。ただし、フィールドや構造体の数が増えると、この方法は面倒になります。
代替ソリューション
Go コミュニティは、検証プロセスを簡素化するさまざまなパッケージを開発しました。そのようなパッケージの 1 つが、人気のある「go-validator」(https://github.com/go-validator/validator) です。
このパッケージを使用すると、構造体内のタグを使用して各フィールドの検証ルールを定義できます。意味。次に、バリデーターは、定義されたルールに対して値を自動的にチェックします。
例
検証ルールを含む次の構造体を考えてみましょう:
import "github.com/go-validator/validator"
type Event struct {
Id int `validator:"min=1"`
UserId int `validator:"min=1"`
Start string `validator:"datetime"`
End string `validator:"datetime"`
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3