bitrix-validation について
Bitrix の検証機能で DTO やコントローラー入力を検証するためのスキルです。ルール、カスタムバリデーター、バージョン制約、検証エラーの伝達方法を説明します。
主な機能
- 01DTO の検証ルール定義
- 02コントローラーアクションパラメーターの検証
- 03ネストしたオブジェクトとコレクションの検証
- 04カスタムルールとバリデーターの作成
- 05Result を介したエラーの伝達
活用シーン
- 01サービス入力のネストした値を検証
- 02コントローラーパラメーターにルールを適用
- 03サービス結果を通じた検証エラーの返却
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bxmaximum/ bitrix-framework-skills --skill bitrix-validationインストール後、Claude Code で/bitrix-validationを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
rules/controller.mdcustom.mdrules-dto.md詳細
バリデーション
ベースライン:main 23.0+ · 検証済み:main 26.800.0
名前空間全体は main 24.300 以降です。それ以前では、サービス内で入力を手動で確認し、Result エラーを返してください(bitrix-result-and-errors)。
| タスク | 参照先 |
|---|---|
ルール属性、DTO、ネストされたオブジェクト、コレクション、グループ、ValidationService | rules/rules-dto.md |
コントローラーの入力:アクションパラメーターのルール、ValidationParameter DTO | rules/controller.md |
| カスタムルール属性とバリデーター、エラーコード | rules/custom.md |
不変条件
- サービス:
ServiceLocator::getInstance()->get('main.validation.service')を使用するか、サービスのコンストラクターでValidationServiceを型指定します(ステートレス)。 .settings.phpにvalidationセクションはなく、#[ValidationParameter]属性もありません。- 名前:
RegExp(Regexではありません)、errorMessage(messageではありません)。エラーにはgetField()がありません。プロパティパスはgetCode()(email、items.0.name)に含まれます。 - アクションパラメーターのルール、
groups、#[Json]、#[OnlyOneOfPropertyRequired]は main 26.250 以降*です。25.x では、アクションパラメーターに指定したルールは無視されるため、代わりに DTO をバリデーションしてください。 ValidationResultはResultを継承します。エラーはサービスのResult経由で渡し、例外をスローしないでください。
コメント
Markdown 対応